我有这样的意识:
year week sale_amount
2016 16 85501
2016 12 74286
2016 14 87499
如何在ts
中对其进行转换,以便在R中使用预测?
答案 0 :(得分:0)
只需以正确的方式对数据进行排序,然后按照Rob Hyndman的示例创建每周预测(请参阅第3行,了解如何定义ts
对象)。
install.packages("forecast")
library(forecast)
gas <- ts(read.csv("http://robjhyndman.com/data/gasoline.csv", header=FALSE)[,1],
freq=365.25/7, start=1991+31/365.25)
bestfit <- list(aicc=Inf)
for(i in 1:25)
{
fit <- auto.arima(gas, xreg=fourier(gas, K=i), seasonal=FALSE)
if(fit$aicc < bestfit$aicc)
bestfit <- fit
else break;
}
fc <- forecast(bestfit, xreg=fourierf(gas, K=12, h=104))
plot(fc)
代码&amp;图片来自http://robjhyndman.com/hyndsight/forecasting-weekly-data/,您还可以在其中找到有关如何应用其他预测模型的详细信息。