R中的fourier()vs fourierf()函数

Bry*_*yan 5 r decomposition forecasting

我使用的是fourier()fourierf()功能罗恩海德门的出色forecast包河展望验证的相同条款是否被选中,并在使用fourier()fourierf(),我策划了几个输出项.

以下是使用的原始数据ts.plot(data).在时间序列中,频率为364,仅供参考. 数据

以下是使用术语的图表fourier(data,3).基本上,它看起来像现有数据的镜像.

傅立叶

再看看输出的sin1项,我们得到一些变化,显示类似的364天季节性与上述数据一致.

fourier2

但是,当我使用fourierf(data,3, 410)以下数据绘制傅里叶预测的结果时.它似乎比原始fourier函数提供的术语更加平滑. fourierf

所以,我想知道的结果fourier()fourierf()有关.是否可以只看到一个合并的傅立叶结果,以便您可以看到通过现有数据然后通过预测期间的罪或余弦结果?如果没有,我如何确认通过fourierf()拟合样本数据创建的术语?

我想在与其他外部回归量的函数auto.arimaglm函数中使用它,如下所示:

 trainFourier<-fourier(data,3)

 trainFourier<-as.data.frame(trainFourier)
 trainFourier$exogenous<-exogenousData
 arima.object<-auto.arima(data, xreg=trainFourier)

 futureFourier<-fourierf(data,3, 410)

 fourierForecast<-forecast(arima.object, xreg=futureFourier, h=410)
Run Code Online (Sandbox Code Playgroud)

并且想要完全确定auto.arima具有适当的拟合(使用术语from fourier())到我将在xreg下放入的内容forecast(其中包含来自不同函数的术语,即ffourier()).

Bry*_*yan 12

找出问题所在.我正在使用fdaforecast包. fda,用于功能数据分析和回归,具有自己的fourier()功能.如果我分离fda,我的S1术语fourier(data,3)看起来像这样:

傅立叶()

如果我使用,它与傅立叶预测很好地排列在一起 ts.plot(c(trainFourier$S1,futureFourier$S1))

故事的道德 - 看看你的包裹是什么,人们!