R 中的增强 dickey-fuller 测试(带有示例)


如果时间序列没有趋势、随着时间的推移呈现恒定的方差并且随着时间的推移具有恒定的自相关结构,则该时间序列被称为“平稳”。

测试时间序列是否平稳的一种方法是执行增强迪基-富勒检验,该检验使用以下原假设和备择假设:

H 0时间序列是非平稳的。换句话说,它的结构取决于时间,并且它的变化并不随时间恒定。

H A时间序列是平稳的。

如果检验的p 值低于一定的显着性水平(例如 α = 0.05),那么我们可以拒绝原假设并得出时间序列平稳的结论。

以下分步示例演示如何在 R 中针对给定时间序列执行增强的 Dickey-Fuller 测试。

示例:R 中的增强 Dickey-Fuller 测试

假设我们在 R 中有以下时间序列数据:

 data <- c(3, 4, 4, 5, 6, 7, 6, 6, 7, 8, 9, 12, 10)

在对数据执行增强的 Dickey-Fuller 测试之前,我们可以创建一个快速绘图来可视化数据:

 plot(data, type=' l ')

要执行增强的 Dickey-Fuller 测试,我们可以使用tseries库中的adf.test()函数。

下面的代码展示了如何使用这个函数:

 library (tseries)

#perform augmented Dickey-Fuller test 
adf.test(data)

	Augmented Dickey-Fuller Test

data:data
Dickey-Fuller = -2.2048, Lag order = 2, p-value = 0.4943
alternative hypothesis: stationary

以下是如何解释结果中最重要的值:

  • 测试统计量: -2.2048
  • P 值: 0.4943

由于 p 值不小于 0.05,因此我们无法拒绝原假设。

这意味着时间序列不是平稳的。换句话说,它的结构取决于时间,并且它的变化并不随时间恒定。

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何在 R 中执行 Mann-Kendall 趋势检验
如何在 R 中绘制时间序列
如何减少数据趋势

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注