我已获得各地的每周销售信息约3年。它已获得157周的信息。此外,我有可能的外部因素影响销售。我想预测每个位置的销售接下来的5周考虑其他独立因素的影响。
这是我的数据集:
https://drive.google.com/file/d/0Bx_EVbbAkrHMcWxFc2ZSb0NTcTg/view?usp=sharing
首先,我编写了单一位置的代码,并希望针对多个位置和其他因素进行开发。
所有因素可能都不会影响销售。我的想法是找到销售的重要驱动因素,然后将其用于预测。
以下是我的一些样本数据代码(随机):
s.date< - c(2011,46) 销售额< - ts(mystore $ Sales,start = s.date,frequency = 52)
sales
Time Series:
Start = c(2011, 46)
End = c(2014, 46)
Frequency = 52
[1] 357 429 256 131 497 389 265 360 126 401 205 294 173 121 446 333 142 361 119
[20] 228 396 386 149 398 333 349 274 269 174 298 115 193 289 468 494 295 440 482
[39] 328 379 337 491 331 182 279 497 239 434 462 119 167 133 145 251 199 428 472
[58] 193 448 480 154 244 108 150 173 273 357 277 219 216 211 340 101 192 309 281
[77] 423 373 135 354 179 459 500 445 259 341 325 167 335 431 322 140 188 430 238
[96] 299 204 350 120 262 193 433 159 457 216 487 239 242 281 207 440 386 339 490
[115] 225 223 208 322 279 408 312 168 249 438 242 241 369 214 383 310 487 382 465
[134] 480 127 394 274 335 369 332 145 210 265 467 115 372 447 270 440 278 122 477
[153] 353 360 451 309 347
> fit_sales <- auto.arima(sales)
> forecast_sales <- forecast(fit_sales,5)
> summary(forecast_sales)
Forecast method: ARIMA(0,0,0)(1,0,0)[52] with non-zero mean
Model Information:
Series: sales
ARIMA(0,0,0)(1,0,0)[52] with non-zero mean
Coefficients:
sar1 intercept
0.0630 303.2885
s.e. 0.0969 9.5327
sigma^2 estimated as 13012: log likelihood=-966.56
AIC=1939.11 AICc=1939.27 BIC=1948.28
Error measures:
ME RMSE MAE MPE MAPE MASE ACF1
Training set -0.01696482 114.0691 97.73952 -19.54967 42.19241 0.7709323 0.0365932
Forecasts:
Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
2014.885 314.8688 168.6833 461.0543 91.29737 538.4402
2014.904 299.2361 153.0506 445.4216 75.66467 522.8075
2014.923 299.4252 153.2397 445.6107 75.85377 522.9966
2014.942 301.8836 155.6981 448.0691 78.31214 525.4550
2014.962 297.2190 151.0335 443.4045 73.64754 520.7904
> accuracy(forecast_sales)
ME RMSE MAE MPE MAPE MASE ACF1
Training set -0.01696482 114.0691 97.73952 -19.54967 42.19241 0.7709323 0.0365932
> plot(forecast_sales)
> forecast_sales
Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
2014.885 314.8688 168.6833 461.0543 91.29737 538.4402
2014.904 299.2361 153.0506 445.4216 75.66467 522.8075
2014.923 299.4252 153.2397 445.6107 75.85377 522.9966
2014.942 301.8836 155.6981 448.0691 78.31214 525.4550
2014.962 297.2190 151.0335 443.4045 73.64754 520.7904
我想知道自动无论是否自己处理季节性(虽然选择了优化模型)?我知道转换的基本,静态测试,趋势差异,acf,pacf,白色残差的噪音测试。如何在我的情况下实现它们。
请帮我处理我的案例代码。我应该去做任何循环吗?
答案 0 :(得分:0)
它确实考虑了季节性。查看“D”下auto.arima的帮助页面。
此外,如果您有大量信息,您可以尝试其他预测方法,如随机森林等。我目前预测公司提前4个月,我的时间序列模型无法接近我的其他型号。我使用的输入包括今天的收入 - 364。有什么价格?一年中的一个月。还有更多。我发现我可以获得更多信息到标准模型而不是auto.arima。
而且,这并不是这个问题的论坛。我想你想要交叉验证:)。