时间序列的平稳性
并不是所有的时间序列都是可预测的,想象一下,假如一个时间序列的变化特性是不稳定的,那么它每个时期的波动对于之后一个时期的变化的影响都是无法预测的,因为它随时可能变脸。而当一个时间序列的变化特征维持稳定,数据的历史分布和未来分布就会趋于一致,这时我们就可以根据历史数据对未来作出预测。用来刻画数据变化特征稳定的量就是时间序列的平稳性。 如果图像没有明显的趋势,围绕着一个水平线稳定波动,序列传播没有明显的疏密变化,则可以判定为稳定序列。当然这种方法过于主观,还是需要更为严密的统计学检验。 观察图像的方式很直观,但也很主观,不适用于机器自动判断序列的稳定性。因此我们需要一个更有说服力、更加客观的统计方法来帮助我们检验时间序列的平稳性,这种方法,就是单位根检验。 当一个时间序列的滞后算子多项式方程 存在单位根时 ,我们认为该时间序列是 非平稳 的;反之,当该方程 不存在单位根 时,我们认为该时间序列是 平稳 的。其原理比较复杂,想要理解它需要较好的数学基础,这里我们只关注在Python中如何使用。 常见的单位根检验方法有 DF检验 、 ADF检验 和 PP检验 ,这里演示如何使用最常用的ADF检验。 (1)Python中的statsmodels库提供ADF检验函数,使用时需要引入 from statsmodels.tsa.stattools import adfuller as ADF (2)具体函数如下: statsmodels.tsa.stattools.adfuller(x, maxlag=None, regression='c', autolag='AIC', store=False, regresults=False) (3)返回值解析: (-5.2350403606036302, 7.4536580061930903e-06, 0, 60, {'1%': -3.5443688564814813, '5%': -2.9110731481481484, '10%': -2.5931902777777776}, 1935.4779504450603)
时间序列的平稳性检验的目的是什么?
一阶差分平稳说明可以用一阶差分序列进行分析,采用ARMA模型。为了确定没有随机趋势或确定趋势,否则将会产生“伪回归”问题。伪回归是说,有时数据的高度相关仅仅是因为二者同时随时间有向上或向下的变动趋势,并没有真正联系。这样数据中的趋势项,季节项等无法消除,从而在残差分析中无法准确进行分析。时间序列时间序列(或称动态数列)是指将同一统计指标的数值按其发生的时间先后顺序排列而成的数列。时间序列分析的主要目的是根据已有的历史数据对未来进行预测。构成要素:长期趋势,季节变动,循环变动,不规则变动。长期趋势(T)现象在较长时期内受某种根本性因素作用而形成的总的变动趋势。季节变动(S)现象在一年内随着季节的变化而发生的有规律的周期性变动。