R 语言环境下使用ARIMA模型做时间序列预测
1.序列平稳性检验
通过趋势线、自相关(ACF)与偏自相关(PACF)图、假设检验和因素分解等方法确定序列平稳性,识别周期性,从而为选择适当的模型提供依据。 1.1绘制趋势线
图1 序列趋势线图
从图1很难判断出序列的平稳性。 1.2绘制自相关和偏自相关图
图2 序列的自相关和偏自相关图
从图2可以看出,ACF拖尾,PACF1步截尾(p=1),说明该现金流时间序列可能是平稳性时间序列。 1.3 ADF、PP和KPSS 检验平稳性
图3 ADF、PP和KPSS检验结果
通过ADF检验,说明该现金流时间序列是平稳性时间序列(p-value for ADF test <0.02,拒绝零假设).pp test和kpss test 结果中的警告信息说明这两种检验在这里不可用。但是这些检验没有充分考虑趋势、周期和季节性等因素。下面对该序列进行趋势、季节性和不确定性因素分解来进一步确认序列的平稳性。 1.4 趋势、季节性和不确定性因素分解
R 提供了两种方法来分解时间序列中的趋势、季节性和不确定性因素。第一种是使用简单的对称过滤法,把相应时期内经趋势调整后的观察值进行平均,通过decompose()函数实现,如图4。第二种方法更为精确,它通过平滑增大规模后的观察值来寻找趋势、季节和不确定因素,利用stl()函数实现。如图5。
图4 decompose()函数分解法
图5 stl()函数分解法
两种方法得到的结果非常相似。从上图可以看出,该现金流时间序列没有很明显的长期趋势。但是有明显的季节性或周期性趋势,经分解后的不确定因素明显减少。
相关推荐: