时间序列的平稳性与差分法

时间:2024-03-22 10:38:47

1、时间序列

时间序列(或称动态数列)是指将同一统计指标的数值按其发生的时间先后顺序排列而成的数列。时间序列分析的主要目的是根据已有的历史数据对未来进行预测。

2、为什么要平稳

我们的拿到的数据可能是千奇百怪的,但是我们要做预测,比如说如果我们想去预测股价,这些数据要有规律可循我们才可以进行预测,如果数据是随机出来的,一点规律也没有,那我们就很难建立一个模型预测接下来的数据,所以,在我们在预测的时候要求时间序列数据必须有一定的趋势,即未来的一段时间内仍能顺着现有的形态延续下去。

3、什么是平稳性

平稳的基本思想是:时间序列的行为并不随时间改变。

平稳性要求序列的均值和方差是与时间t无关的常数,协方差也只与时间间隔k有关,与时间t无关。

4、严平稳与弱平稳

严平稳:严平稳只有当序列所有的统计性质都不会随着时间的推移而发生变化,也就是分布不随时间的改变而改变

如:白噪声(正态),期望始终为0,方差始终为1

弱平稳:期望值与相关系数不变,期望值是常数(通常我们让它为0),X1与X3,X2与X4的相关系数都是一样的,也就是说,相关系数取决于时间间隔而非时间起始点,也就是说,未来某时刻的t的值Xt要依赖于它过去的信息

5、差分法

当我们拿到数据时,这些数据可能浮动很大,那怎么才能让数据变得平稳呢,其中一种方法就是差分法。

差分法:时间序列在t与t-1时刻的差值。

比如我们有一组序列,如下图

 

时间序列的平稳性与差分法

                                                          图1:原始数据图像

这组数据的分布还是很大的,不符合平稳性的要求,所以我们需要进行差分,将时刻值相减。

时间序列的平稳性与差分法

                                                           图2:一阶差分图像

对一阶差分后的数据再进行一阶差分则为二阶差分,并不是在源数据差分两次。

时间序列的平稳性与差分法

                                                         图3:二阶差分图像

做差分可以使数据的平稳性更好一些,但需要注意的是不必要的差分可扭曲时间序列模型及降低预测精度。

6、Matlab中的diff函数

Y = diff(X):计算沿大小不等于1的第一个数组维度的X相邻元素之间的差分。如果X是长度为m的向量,则返回长度为m-1的向量;如果X是p*m的矩阵,则返回(p-1)*m的矩阵;如果X是空矩阵,则返回空矩阵。

时间序列的平稳性与差分法时间序列的平稳性与差分法时间序列的平稳性与差分法

 

Y = diff(X,n) 通过递归应用 diff(X) 运算符 n 来计算第 n 阶差分。在实际操作中,这表示 diff(X,2) 与diff(diff(X)) 相同。

时间序列的平稳性与差分法时间序列的平稳性与差分法

Y = diff(X,n,dim) 是沿 dim 指定的维计算的第 n 阶差分。dim 输入是一个正整数标量。

时间序列的平稳性与差分法