R中的错误:分解(y):时间序列不超过2个周期

时间:2018-12-04 16:08:18

标签: r time-series

我有一个日常交易的时间序列数据,从2017-06-28到2018-11-26。 数据如下:

enter image description here

我有兴趣在R中使用decompose()或stl()函数。但是我得到了

error:
decompose(y) : time series has no or less than 2 periods

当我尝试使用decompose()时 和

Error in stl(y, "periodic") : 
  series is not periodic or has less than two periods

当我尝试使用stl()时。

我知道我必须指定时间段,但是我不明白我的情况应该是哪个时间段?我尝试了以下玩具示例:

dat <- cumsum(rnorm(51.7*10))
y <- ts(dat, frequency = 517)
plot.ts(y)
stl(y, "periodic")

但是我无法成功。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

频率参数反映了季节性模式重复之前的观测次数。由于您的数据是每日数据,因此您可能希望将频率设置为等于7或365.25(取决于您的业务季节性)。

当然,业务季节性越大,分解时间序列所需的数据就越多(即超过2个周期)。在您的情况下,您将频率设置为517,但是有不到两个周期的可用数据。因此,季节分解不会发生。

有关更多信息,请参见:Rob Hyndman's Forecasting Principles and Practice book