时间序列探索性分析

本文聚焦时间序列的探索性分析,涵盖数据统计性描述、预处理、时序图展示等内容。介绍了平稳性分析的ADF检验、白噪音分析的Q检验,还提及季节性分析的CH和OCSB测试,以及异方差检验的多种方法,为后续建模与评估做准备。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 时间序列探索性分析

时间序列的探索性分析用于理解时间序列数据,便于后续的建模与评估。

1.1 数据统计性描述

同其他数据的分析一样,我们需要数据的统计性描述。比如我们需要知道数据的单位,数据的统计特征如最大值,最小值,四分位数等。

1.2 数据预处理

同其他数据的分析一样,我们需要对数据的缺失值进行预处理,如果缺失值位于时间序列的开头或尾部,通常做法是直接删除;如果缺失值位于时间序列的中间,通常做法是进行替换插值,可以选择序列平均值,临近点的平均值,临近点的中位数,线性插值和邻近点的回归预测值等。

1.3 时序图

我们收集到时间序列数据后,通常是通过画图的方式展示数据的直观特征。对于时间序列数据,最常用的图就是时间序列图。表示方式: t t t为横坐标, X t X_t Xt为纵坐标,将观察值 ( t , X t ) , t = 1 , 2 , n \left(t,X_t\right),t=1,2,n (t,Xt),t=1,2,n列在平面上,按时间序列绘成折线图:
时序图
接着我们可以从时间序列图中观察数据的长期趋势、季节变动等变化影响因素。
举一个例子方便理解:

原始数据:

原始时序图

长期趋势:

分解后的长期趋势

季节变动:

分解后的季节变动

不规则变动(残差):

分解后的不规则变动

1.4 平稳性分析

在使用很多时间序列模型的时候,如 ARMA、ARIMA,都会要求时间序列是平稳的,所以一般在研究一段时间序列的时候,第一步都需要进行平稳性检验,除了用肉眼检测的方法,另外比较常用的严格的统计检验方法就是ADF检验,也叫做单位根检验。ADF检验全称是 Augmented Dickey-Fuller test,顾名思义,ADF是 Dickey-Fuller检验的增广形式。DF检验只能应用于一阶情况,当序列存在高阶的滞后相关时,可以使用ADF检验,所以说ADF是对DF检验的扩展。

在做ADF检验,也就是单位根检验时,需要先明白一个概念,也就是要检验的对象——单位根。

当一个自回归过程中: X t = b X t − 1 + a + ϵ t X_t=bX_{t-1}+a+\epsilon_t Xt=bXt1+a+ϵt,如果滞后项系数b为1,就称为单位根。当单位根存在时,自变量和因变量之间的关系具有欺骗性,因为残差序列的任何误差都不会随着样本量(即时期数)增大而衰减,也就是说模型中的残差的影响是永久的。这种回归又称作伪回归。如果单位根存在,这个过程就是一个随机漫步见附录(random walk)。

1.5 白噪音分析

平稳性的时间序列也有可能是白噪音,对白噪音进行建模分析是没有必要的。因此有必要在检验平稳性后,检验是否为白噪音。

如果 { x t } \{x_t\} {xt}是白噪音序列,那么:

ρ s = 1 , s = 00 , s ≠ 0 \rho_s=1,s=00,s≠0 ρs=1,s=00,s=0

一般用样本自相关系数(如下)进行估计:

r s = ρ s ^ = ∑ t = s + 1 T ( x t − x ˉ ) ( x t − s − x ˉ ) ∑ t = 1 T ( x t − x ˉ ) 2 r_s=\widehat{\rho_s}=\frac{\sum_{t=s+1}^{T}\left(x_t-\bar{x}\right)\left(x_{t-s}-\bar{x}\right)}{\sum_{t=1}^{T}\left(x_t-\bar{x}\right)^2} rs=ρs =t=1T(xtxˉ)2t=s+1T(xtxˉ)(xtsxˉ)

Ljung and Box 在1978年提出的Q检验能帮助我们检验残差是否为白噪声:
原假设为:
H 0 : ρ 1 = ρ 2 = ⋯ = ρ s = 0 H_0:ρ_1=ρ_2=⋯=ρ_s=0 H0ρ1=ρ2==ρs=0
即认为 { x t } \{x_t\} {xt}是白噪音序列。

备择假设为:
H 1 : ρ i ( i = 1 , 2 , … , s ) 至少有一个不为0 H_1:\rho_i\left(i=1,2,\ldots,s\right)\text{至少有一个不为0} H1:ρi(i=1,2,,s)至少有一个不为0
即认为 { x t } \{x_t\} {xt}不是白噪音序列。

H 0 H_0 H0成立的条件下,存在统计量Q(如下)服从卡方分布,即:
Q = T ( T + 2 ) ∑ k = 1 s r k 2 T − K ∼ χ s − n 2 Q=T\left(T+2\right)\sum_{k=1}^{s}\frac{r_k^2}{T-K}\sim\chi_{s-n}^2 Q=T(T+2)k=1sTKrk2χsn2
其中 T T T表示样本个数;
n n n表示模型中未知参数的个数;
s s s根据样本量的大小决定,一般可以取8、6、12等,在实际应用中由计算机决定。

具体应用中,计算机会帮我们计算出p值,一般认为p值小于0.05则拒绝原假设。

1.6 季节性分析

可视化时间序列是一种检查季节模式的简单方法。但是可视化太主观了,所以就需要更系统的方法来描述时间序列的而季节性。具体地,可以通过CH测试和OCSB测试检验季节性,它们的原假设都是时间序列不存在季节性变动。具体的数学形式不再列举,具体应用可以通过Python的pmdarima 库轻松实现它们。

1.7 异方差检验

下面介绍如何判断扰动项存在条件异方差。

方法一:画时序图,判断是否存在“波动性聚集”。

方法二:用ADL模型进行估计得到残差序列 { ϵ t } \{\epsilon_t\} {ϵt},再估计回归(如下)中的系数是否显著。
ϵ t 2 = α 0 + α 1 ϵ t − 1 2 + … + α p ϵ t − p 2 + e t \epsilon_t^2=\alpha_0+\alpha_1\epsilon_{t-1}^2+\ldots+\alpha_p\epsilon_{t-p}^2+e_t ϵt2=α0+α1ϵt12++αpϵtp2+et

方法三:用ADL模型进行估计得到残差序列 { ϵ t } \{\epsilon_t\} {ϵt},检验其平方的自相关性。

方法四:直接使用ARCH模型和GARCH模型,观察异方差方程中系数是否显著。

方法五:进行专门的异方差检验,如arch模型下的LM检验。具体原理不再介绍,在Python库中有库函数可以轻松使用。

2. 引用

统计基础知识-7.3时间序列的探索性分析 - 倔强的文章 - 知乎https://zhuanlan.zhihu.com/p/632153642

3. 附录

3.1 随机漫步

对于时间序列 { x t } \{x_t\} {xt},如果满足如下条件,该时间序列是一个随机漫步(也称随机游走):

x t = w t + w t − 1 + … + w 0 x_t=w_t+w_{t-1}+\ldots+w_0 xt=wt+wt1++w0

其中, w t w_t wt是一个均值为0,方差为 σ 2 \sigma^2 σ2的白噪声。
所以随机游走是白噪声的一个累积。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值