目录
一、引言
单位根检验在时间序列分析中具有重要地位,用于判断时间序列数据是否平稳。本文将详细介绍单位根检验的基本概念、理论原理以及在 Stata 中的具体操作步骤,并通过实际数据进行演示。
二、单位根检验的基本概念与理论原理
单位根检验的核心思想是检验时间序列数据的生成过程中是否存在单位根。如果一个时间序列存在单位根,那么它是非平稳的;反之,如果不存在单位根,则是平稳的。
平稳时间序列具有以下重要性质:
- 均值是常数,不随时间变化。
- 方差是常数,不随时间变化。
- 自协方差只与时间间隔有关,而与时间点无关。
单位根的存在意味着时间序列的方差和均值会随着时间无限增长,这会导致许多传统的统计方法失效,例如回归分析可能产生虚假的结果。
常见的单位根检验方法,如 ADF 检验(Augmented Dickey-Fuller Test)和 PP 检验(Phillips-Perron Test),都是基于以下模型:
对于 PP 检验,它对序列的异方差和自相关具有更强的稳健性。
三、数据准备
首先,我们需要准备一组时间序列数据。以下是一个示例数据的生成代码:
clear
set obs 100
gen t = _n
gen y = 0.5 * y[_n - 1] + 1 + rnormal()
gen x = t + rnormal()
// 查看数据的前几行
list in 1/10
在上述代码中,我们生成了一个包含 100 个观测值的时间序列 y
和另一个时间序列 x
,y
具有一定的自相关性和随机扰动,x
则是时间与随机扰动的组合。
四、ADF 检验在 Stata 中的操作步骤
安装必要的命令
ssc install dfuller
执行 ADF 检验
// 包含常数项和趋势项的默认 ADF 检验
dfuller y
// 仅包含常数项的 ADF 检验
dfuller y, regress
// 不包含常数项和趋势项的 ADF 检验
dfuller y, nocons
// 指定滞后阶数为 2 的 ADF 检验
dfuller y, lags(2)
代码解释:
dfuller
命令默认会进行包含常数项和趋势项的 ADF 检验。regress
选项表示仅包含常数项。nocons
选项表示不包含常数项和趋势项。lags(2)
用于指定滞后阶数为 2。
代码运行结果:
会输出检验统计量的值、p 值、滞后阶数等信息。例如:
Dickey-Fuller test for unit root
Test 1: Include constant and linear trend
z(t) = -0.983, p = 0.167 (MacKinnon approximate p-value for Z(t))
Critical values for test statistics:
1% level -3.434
5% level -2.863
10% level -2.568
Lag order: 0
基于不同信息准则选择滞后阶数
dfuller y, selectlags
五、PP 检验在 Stata 中的操作步骤
安装必要的命令
ssc install pperron
执行 PP 检验
// 包含常数项和趋势项的默认 PP 检验
pperron y
// 仅包含常数项的 PP 检验
pperron y, regress
// 不包含常数项和趋势项的 PP 检验
pperron y, nocons
代码解释:
- 与 ADF 检验中的选项类似,用于指定不同的模型形式。
代码运行结果:
输出类似于 ADF 检验的统计量和相关信息。
六、结果解读
无论是 ADF 检验还是 PP 检验,我们主要关注 p 值。如果 p 值小于给定的显著性水平(通常为 0.05),则拒绝原假设,认为时间序列是平稳的;否则,认为时间序列是非平稳的。
七、注意事项
- 选择合适的滞后阶数对于检验结果的准确性很重要,可以通过信息准则(如 AIC、BIC)来确定。
- 不同的检验方法可能会得出不同的结论,需要综合考虑。
- 实际应用中,还可以对多个时间序列进行单位根检验,以比较它们的平稳性特征。
2000-2022年上市公司数字化转型与绿色创新质量匹配数据(含控制变量)https://download.csdn.net/download/a519573917/89501000