预测抛出误差K必须不大于period / 2

时间:2015-03-03 20:16:59

标签: r

我发出以下命令:

ops <- read.csv("ops.csv")
ops.ts <- ts(ops, frequency=12, start=c(2014,1))
ops.fc <- forecast(ops.ts)

forecast()然后抛出以下错误:

Error in ...fourier(x, K, 1:length(x)) : 
  K must be not be greater than period/2

根据摘要(ops),来自csv的数据如下所示:

1  10
2   3
3   7
4   4
5   2
6  20
7  13
8   9
9   8
10  7
11  6
12 11
13  7

R是最新的,预测是通过CRAN安装的。

我很感激任何建议,特别是因为我对R很安静。

1 个答案:

答案 0 :(得分:0)

错误消息不言自明。

数据集中有13个元素,所以当你这样做时:

ops.ts <- ts(ops, frequency = 12, start=c(2014, 1))

你得到(注意2015年的价值):

#> ops.ts
#     Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
#2014  10   3   7   4   2  20  13   9   8   7   6  11
#2015   7  

我猜你只想使用前12个月,然后使用forecast()?如果是这种情况,您可以这样做:

ops.ts <- ts(ops, frequency = 12, start = 2014, end = c(2015, 0))
ops.fc <- forecast(ops.ts)

ops <- ops[1:12, ]
ops.ts <- ts(ops, frequency = 12, start = 2014)
ops.fc <- forecast(ops.ts)