我有一个包含双重季节性成分的时间序列,我想将该序列分解为以下时间序列成分(趋势,季节性成分1,季节性成分2和不规则成分)。据我所知,用于分解R中序列的STL过程仅允许一个季节性成分,因此我尝试了两次分解序列。首先,使用以下代码将频率设置为第一个季节性成分:
ser = ts(data, freq=48)
dec_1 = stl(ser, s.window="per")
然后,我dec_1
通过将频率设置为第二个季节性分量来分解分解系列()的不规则分量,从而:
ser2 = ts(dec_1$time.series[,3], freq=336)
dec_2 = stl(ser2, s.window="per")
我对这种方法不是很自信。而且我想知道是否还有其他方法可以分解具有多个季节性的序列。另外,我注意到tbats()
R 预测软件包中的函数允许一个模型适合具有多个季节性的序列,但是它并未说明如何使用它来分解一个序列。
您好,欢迎光临该网站。对于您的两个季节部分,它们是否具有不同的周期性,例如每周一次,每月一次?
—
米歇尔
Rob Hyndman,Koehler,Ord和Snyder的第14章“使用指数平滑进行预测”对此进行了介绍。Hyndman在R中也有一个预测软件包。我似乎还记得Hyndman在此站点上发布过有关此主题的信息,但它可能已经发布在他的博客中。
—
zbicyclist 2012年
@Michelle嗨,谢谢您的回复。是的,这两个季节性因素具有不同的周期性。第一个周期为48(每日季节性),而第二个周期为336(每周季节性)。这是一个半小时的时间序列。
—
2012年
@zbicyclist我相信您正在使用的预测程序包是我在原始帖子中提到的“预测”程序包。我看过了这个包的tbats函数,但是没有说明如何使用它进行分解。我将检查这本书,看看是否能找到任何进一步的插图。
—
2012年
这就是我的想法。它在Hyndman的博客上。robjhyndman.com/papers/complex-seasonality
—
zbicyclist 2012年