预测值在R中变得相同

时间:2014-12-04 11:47:51

标签: r forecasting

我有一个样本数据

Sno     period       year_quarter   country            city        sales_revenue
1       1/1/2009        2009-Q1     Argentina       Buenos Aires        3008
2       1/4/2009        2009-Q2     Argentina       Buenos Aires        3244
3       1/7/2009        2009-Q3     Argentina       Buenos Aires        8000
4       1/10/2009       2009-Q4     Argentina       Buenos Aires        8719
5       1/1/2010        2010-Q1     Argentina       Buenos Aires        3008
6       1/4/2010        2010-Q2     Argentina       Buenos Aires        3244
7       1/7/2010        2010-Q3     Argentina       Buenos Aires        78
8       1/10/2010       2010-Q4     Argentina       Buenos Aires        7379
9       1/1/2011        2011-Q1     Argentina       Buenos Aires        3735
10      1/4/2011        2011-Q2     Argentina       Buenos Aires        7339
11      1/7/2011        2011-Q3     Argentina       Buenos Aires        17240
12      1/10/2011       2011-Q4     Argentina       Buenos Aires        20465
13      1/1/2012        2012-Q1     Argentina       Buenos Aires        13134
14      1/4/2012        2012-Q2     Argentina       Buenos Aires        15039


我在ETS(A,N,N)的帮助下预测了三季度,即2012年第3季度,2012年第4季度和2013年第1季度。预测代码如下所示

retail_data.xts<-xts(retail_data$sales_revenue, retail_data$period);
retail_data.ts <- as.ts(retail_data.xts);
retail_data.ets <- ets(retail_data.ts,model="ANN");
retail_data.fore <- forecast(retail_data.ets, h=4);
plot(retail_data.fore);

计算的结果是

 Point Forecast    Lo 80    Hi 80     Lo 95    Hi 95
15       14905.37 8925.968 20884.78 5760.6608 24050.09
16       14905.37 7202.071 22608.68 3124.1881 26686.56
17       14905.37 5798.868 24011.88  978.1739 28832.58
18       14905.37 4584.713 25226.04 -878.7150 30689.46

所有预测值都相同 是因为小数据集还是我的方法不好? 需要建议。

2 个答案:

答案 0 :(得分:1)

通过使用model = "ANN",您拟合了一个带有加性误差的简单指数平滑模型(A)。有关可能的模型,请参阅help(ets)或保留模型参数以进行自动模型选择。您的模型不包含趋势,也没有季节性(NN)。

可能模型的数学详细信息在A state space framework for automatic forecasting using exponential smoothing methods中给出,如ets的帮助页面所述。如第441和442页所述,系列级别 l_t 是原始时间序列 Y_t 的线性函数。在没有趋势和季节性的模型(例如ANN)中,预测 F_ {t + h} 不依赖于 h F_ {t + h} = l_t 即可。这就是为什么上面例子中的预测对于所有视野都是相同的,只有置信区间随着 h 的增加而变宽。

我想在这里讨论哪种模型是合适的,但我认为使用指数平滑的方法在短时间序列下是合理的。

答案 1 :(得分:0)

另外,我发现如果你的时间序列数量较少,那么你将获得相同的预测。我想这是因为该模型无法从可用的时间序列中推导出季节性或趋势分量。但是当我收集更多过去的数据时,我得到了更好的预测。