我有多变量的时间序列数据,我试图分解。数据每小时采样一次,每天采样六次(freq = 6
),从2011
到2017
。
将我的数据从xts()
转换为ts()
并进行绘图后,我得到了这张图:
我的季节性错误在哪里?如何在分解后在x轴上保留xts()
,format="%Y/%m/%d %H:%M"
的时间戳/索引?
我的数据:
subset4 <- structure(list(DATE.AND.TIME.GMT = structure(c(1293873660, 1293888060,
1293902400, 1293916860, 1293931260, 1293945600, 1293960060, 1293974460,
1293988800, 1294003260, 1294017660, 1294032000, 1294046460, 1294060860,
1294075200, 1294089660, 1294104060, 1294118460, 1294132860, 1294147260
), class = c("POSIXct", "POSIXt"), tzone = ""), EMP = c(62.4,
61.5, 60.6, 59.5, 59.4, 59, 61, 64, 64.4, 64.4, 64.4, 64.4, 64.4,
64.4, 64.4, 64.4, 64.4, 64.4, 64.4, 64.4)), .Names = c("DATE.AND.TIME.GMT",
"EMP"), na.action = structure(c(606L, 9510L, 33942L, 33943L,
51414L, 51415L, 68885L, 68886L, 86356L, 86357L, 104163L, 104164L,
121633L, 121634L), .Names = c("606", "9510", "33942", "33943",
"51414", "51415", "68885", "68886", "86356", "86357", "104163",
"104164", "121633", "121634"), class = "omit"), row.names = 28584:28603, class = "data.frame")
代码:
subset4 = xts(subset4[,-1], as.POSIXct(subset4[,1], format="%Y/%m/%d %H:%M", tz="GMT"))
class(subset4)
subset4 = ts(subset4, frequency = 6)
plot(decompose(subset4))
答案 0 :(得分:0)
频率似乎是一个复杂的变量。根据其价值,做出一些假设。在实例4中,7和12应该是季度,星期和几个月。
频率:每单位时间的观察次数。
当在每个单位时间间隔中对系列进行整数采样时,使用参数频率的值。例如,当每天对数据进行采样时,可以使用值7作为频率,并且自然时间段是一周,或者当数据每月采样且自然时间段是一年时为12。在(例如)打印方法中假定值4和12分别表示季度和月度系列。
然后,由于其他值的时间单位似乎为一年,您必须将频率定义为一年的样本数:每天6个样本,一年365天。
您可以选择年份和样本数量(600 = 100天)的矢量中的第一个日期。
开始:第一次观察的时间。单个数字或两个整数的向量,它们指定时间单位中的自然时间单位和(基于1)个样本数。请参阅示例以了解第二种形式的使用。
subset4&lt; - ts(subset4,frequency = 365 * 6,start = c(2011,600))