【Python算法】--非平稳时间序列分析
1.非平稳时间序列分析
上节介绍了对平稳时间序列进行分析的方法。实际上,在自然界中绝大部分序列都是非平稳的。因而对非平稳序列的分析更普遍、更重要,创造出来的分析方法也更多。
对非平稳时间序列的分析方法可以分为确定性因素分解的时序分析和随机时序分析两大类。
确定性因素分解的方法把所有序列的变化都归结为4个因素(长期趋势、季节变动、循环变动和随机波动)的综合影响,其中长期趋势和季节变动的规律性信息通常比较容易提取,而由随机因素导致的波动则非常难确定和分析,对随机信息浪费严重,会导致模型拟合精度不够理想。
随机时序分析法的发展就是为了弥补确定性肉素分解方法的不足。根据时间序列的不同特点,随机时序分析可以建立的模型有ARIMA模型、残差自回归模型、季节模型、异方差模型等。 本节重点介绍使用ARIMA模型对非平稳时间序列进行建模的方法。
2.差分运算
1.p阶差分
相距一期的两个序列值之间的减法运算称为一阶差分运算。
2.步差分
相距k期的两个序列值之间的减法运算称为k步差分运算。
3.ARIMA模型
差分运算具有强大的确定性信息提取能力,许多非平稳序列差分后会显示出平稳序列的性质,这时称这个非平稳序列为差分平稳序列。对差分平稳序列可以使用 ARMA 模型进行拟合。ARIMA 模型的实质就是差分运算与 ARMA 模型的组合,掌握了 ARMA 模型的建模方法和步骤以后,对序列建立 ARIMA 模型是比较简单的。
差分平稳时间序列建模步骤如图所示:
例:就餐饮企业而言,经常会碰到如下问题: 由于餐饮行业是生产和销售同时进行的