时间序列分析(7)| ADF检验

article/2025/10/8 21:35:48

上篇介绍了DF检验,该检验仅用于AR(1)过程的单位根检验,对于AR()过程来说,需要使用拓展DF检验(augmented Dickey-Fuller,ADF)。

1 模型检验形式

AR()过程的形式如下:

上式可以转换成如下形式:

而一阶检验的模型形式为:

与一阶的形式相比,p阶形式的相当于;可以看做是的滞后期,是特有的部分。

ADF检验使用的函数依然是urca工具包中的ur.df()

ur.df(y, type = c("none", "drift", "trend"),lags = 1,selectlags = c("Fixed", "AIC", "BIC"))
  • lag参数是指的滞后项长度的最大可能值;

  • type参数的设置与DF检验一致,根据是否包含截距项和时间趋势项而定;

  • 由于在进行检验前是不知道真实滞后项长度的,需要使用selectlags参数选择确定“最佳”滞后项的原则,“最佳”滞后长度不大于lag参数所对应的值。

以下示例来自官方文档:

library(urca)
data(Raotbl3)
plot(Raotbl3$lc, type = "l")
7c8c30f6dad124cbf22444216bd34cea.png
lc.df <- ur.df(y = Raotbl3$lc, lags = 12, type = 'trend',selectlags = "AIC")
summary(lc.df)
## ############################################### 
## # Augmented Dickey-Fuller Test Unit Root Test # 
## ############################################### 
## 
## Test regression trend 
## 
## 
## Call:
## lm(formula = z.diff ~ z.lag.1 + 1 + tt + z.diff.lag)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.045255 -0.005840  0.000133  0.006540  0.035257 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)   
## (Intercept)  1.1215347  0.3852117   2.911  0.00472 **
## z.lag.1     -0.1068796  0.0368355  -2.902  0.00486 **
## tt           0.0006400  0.0002297   2.786  0.00674 **
## z.diff.lag1  0.0328881  0.1080263   0.304  0.76162   
## z.diff.lag2  0.1374570  0.1084381   1.268  0.20881   
## z.diff.lag3  0.3178508  0.1098182   2.894  0.00496 **
## z.diff.lag4 -0.1501981  0.1118817  -1.342  0.18344   
## z.diff.lag5  0.2550984  0.1112869   2.292  0.02466 * 
## z.diff.lag6  0.1094590  0.1152173   0.950  0.34511   
## z.diff.lag7  0.2295406  0.1077044   2.131  0.03631 * 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.01203 on 76 degrees of freedom
## Multiple R-squared:  0.2637, Adjusted R-squared:  0.1765 
## F-statistic: 3.024 on 9 and 76 DF,  p-value: 0.003858
## 
## 
## Value of test-statistic is: -2.9015 3.7964 4.2192 
## 
## Critical values for test statistics: 
##       1pct  5pct 10pct
## tau3 -4.04 -3.45 -3.15
## phi2  6.50  4.88  4.16
## phi3  8.73  6.49  5.47
  • 模型输出结果中,滞后项只到z.diff.lag7,表明按照AIC原则选择的“最优”滞后项长度为7;

  • tau3大于10%显著水平临界值,说明不能拒绝存在单位根的原假设,即;phi2phi3都小于10%显著水平临界值,因此不能拒绝存在截距项和时间趋势(具体解读方法参见上篇时间序列分析(6)| DF检验)。

2 两个检验规则

研究表明,DF和ADF检验在不能拒绝存在单位根的情况下的有效性是很低的。在进行单位根假设时可以结合以下两个规则进行判断:

规则1:在回归方程中,若自变量中既有一阶单整变量,又有平稳变量,那么对于均值为0的平稳变量的系数可以使用t检验,而无需使用DF或ADF检验;

规则2:如果能够确定模型形式中包含确定性成分,即截距项或时间趋势项,那么对于该模型的所有变量的回归系数都可以使用t检验。

据此,单位根检验的一般流程如下:


  • DF或ADF检验有如下三种形式:形式1——不含截距项和时间趋势项;形式2——含截距项;形式3——同时含截距项和时间趋势项;

  • 不管在哪种形式下,若DF或ADF能拒绝的原假设,则都可以认为序列不存在单位根,检验结束;若不能拒绝,由于此时检验有效性低,因此还需进一步地判断;

  • 在形式3下,根据phi3()判断是否能拒绝的原假设。若能拒绝,则可再使用t检验先判断是否显著异于0:

    • 如果显著异于0,则可认为序列中含有确定性的时间趋势成分,根据规则2,则可在形式3下使用t检验判断是否显著异于0,检验结束

    • 如果不能拒绝,或者拒绝后不能再拒绝(即不显著异于0),则需要在形式2下再进行判断;

  • 在形式2下,根据phi1()判断能否拒绝。若能拒绝,则可以使用t检验判断是否显著异于0:

    • 如果显著异于0,则可认为序列中含有确定性的截距成分,根据规则2,则可在形式3下使用t检验判断是否显著异于0,检验结束

    • 如果不能拒绝,或者拒绝后不能再拒绝(即不显著异于0),则此时只能在形式1下进行DF或ADF检验。


在第一节的示例中,所有形式下都不能拒绝的原假设,并且在形式3下不能拒绝,形式2下不能拒绝,因此只能在形式1下进行ADF检验。以下是形式2和形式1下的模型代码,各位读者可以验证。

形式2:

lc.df2 <- ur.df(y = Raotbl3$lc, lags = 12, type = 'drift',selectlags = "AIC")
summary(lc.df2)

形式1:

lc.df3 <- ur.df(y = Raotbl3$lc, lags = 12, type = 'none',selectlags = "AIC")
summary(lc.df3)

http://chatgpt.dhexx.cn/article/XV3dApcA.shtml

相关文章

matlab实现adf检验,ADF检验MATLAB程序资料

ADF-situation1-statistic1-2.m %ADF检验法p取2. %AR(2)过程临界值的确定 T5000; N200; w1zeros(1,T); w2zeros(1,T); for t1:T sita10.7; sita20.3; rusita1sita2; labuda1-sita2; %p2; erandn(1,N); y1(1)e(1); y1(2)sita1*y1(1)e(2); for j3:N y1(j)sita1*y1(j-1)sita2*y1(j…

Python ADF检验

转自&#xff1a;https://pengfoo.com/post/machine-learning/2017-01-24 Abstract 在ARMA/ARIMA这样的自回归模型中&#xff0c;模型对时间序列数据的平稳是有要求的&#xff0c;因此&#xff0c;需要对数据或者数据的n阶差分进行平稳检验&#xff0c;而一种常见的方法就是AD…

ADF单位根检验三种形式_Eviews之ADF单位根检验

本文使用的数据是2010-01-04——2020-03-05沪深300指数的每日收盘价,走势图如下: 接下来,开始使用eviews8.0检验: 1、双击点开所要检验的时间序列数据 2、点击view,然后再选择Unit Root Test 3、检验类型选择ADF检验。检验的顺序一般是 原始数据->一阶差分->二阶差分…

时间序列分析之ADF检验

ADF检验 在使用很多时间序列模型的时候&#xff0c;如 ARMA、ARIMA&#xff0c;都会要求时间序列是平稳的&#xff0c;所以一般在研究一段时间序列的时候&#xff0c;第一步都需要进行平稳性检验&#xff0c;除了用肉眼检测的方法&#xff0c;另外比较常用的严格的统计检验方法…

ADF检验数据平稳性

目录 1 背景 2 单位根 3 单位根检验 4 ADF检验 5 python 实现与结果解释 1 背景 在使用很多时间序列模型的时候&#xff0c;如 ARMA、ARIMA&#xff0c;都会要求时间序列是平稳的&#xff0c;所以一般在研究一段时间序列的时候&#xff0c;第一步都需要进行平稳性检验&…

时间序列学习(4):平稳性检验(单位根检验、ADF检验)

时间序列学习&#xff08;4&#xff09;&#xff1a;平稳性检验&#xff08;单位根检验、ADF检验&#xff09; 1、单位根检验2、ADF检验3、指数走势的检验4、对数收益率序列检验 相关图可以大致判断序列是否平稳。但是&#xff0c;这毕竟不是严格的。 这篇笔记来就谈一谈平稳性…

Spectral clustering(谱聚类)算法的实现

目录 1.作者介绍2.关于谱聚类的介绍2.1 谱聚类概述2.2 无向权重图2.3 邻接矩阵2.4 相似矩阵2.5 度矩阵2.6 拉普拉斯矩阵2.7 K-Means 3.Spectral clustering&#xff08;谱聚类&#xff09;算法实现3.1 数据集3.2 导入所需要的包3.3 获取特征值和特征向量3.4 利用K-Means聚类3.5…

Python学习4-谱聚类

一&#xff0c;谱聚类原理 谱聚类算法原理可以参考如下链接。 这个视频推导出了拉普拉斯矩阵&#xff0c;但没有更新后续优化问题。 机器学习-白板推导系列(二十二)-谱聚类&#xff08;Spectral Clustering&#xff09;_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV…

机器学习-层次聚类(谱系聚类)算法

文章目录 简介距离矩阵最短距离法最长距离法类平均法重心法python应用 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 简介 层次聚类&#xff08;Hierarchical Clustreing&#xff09;又…

到底什么是谱聚类算法?

点击上方“小白学视觉”&#xff0c;选择加"星标"或“置顶” 重磅干货&#xff0c;第一时间送达本文转自&#xff1a;视学算法 谱聚类算法是目前最流行的聚类算法之一&#xff0c;其性能及适用场景优于传统的聚类算法如k-均值算法&#xff0c;本文对谱聚类算法进行了…

图像聚类-谱聚类

最近做的一个东西跟这个相关&#xff0c;本来希望是用深度学习对于没有标签的图像数据进行分类&#xff0c;但是通常情况下&#xff0c;深度学习是对有标签的数据进行学习&#xff0c;目的是用来自动提取特征&#xff0c;代替传统的手工提取特征。因此&#xff0c;比较容易想到…

聚类算法实践(二)——谱聚类、Chameleon聚类

上一篇文章里说到的层次聚类和K-means聚类&#xff0c;可以说是聚类算法里面最基本的两种方法&#xff08;wiki的cluster analysis页面都把它们排前两位&#xff09;。这次要探讨的&#xff0c;则是两个相对“高级”一点的方法&#xff1a;谱聚类和chameleon聚类。 4、谱聚类 …

谱聚类的案例

1. 政治博客数据集(见附件Pol_Blogs_CSV文件) 数据集网址一: Political blogs 数据集网址二: http://www.casos.cs.cmu.edu/computational_tools/datasets/external/polblogs/index11.php 政治博客数据是由Adamic和Glance于2005年收集并分析的. 该数据集包含了2004年美国总…

谱聚类算法 matlab

1、谱聚类算法步骤公式 &#xff08;1&#xff09;整理数据集&#xff0c;使数据集中数据在0-1之间。假设数据集m行n列。 &#xff08;2&#xff09;求邻接矩阵W。元素值为每一点到其他点之间距离&#xff0c;即权重。 &#xff08;3&#xff09;求相似度矩阵S&#xff0c;相…

谱聚类(Spectral Clustering)详解

原文地址为&#xff1a; 谱聚类(Spectral Clustering)详解 谱聚类(Spectral Clustering)详解 谱聚类(Spectral Clustering, SC)是一种基于图论的聚类方法——将带权无向图划分为两个或两个以上的最优子图&#xff0c;使子图内部尽量相似&#xff0c;而子图间距离尽量距离较远&…

从拉普拉斯矩阵说到谱聚类

从拉普拉斯矩阵说到谱聚类 0 引言 11月1日上午&#xff0c;机器学习班 第7次课&#xff0c;邹讲聚类&#xff08;PPT&#xff09;&#xff0c;其中的谱聚类引起了自己的兴趣&#xff0c;邹从最基本的概念&#xff1a;单位向量、两个向量的正交、方阵的特征值和特征向量&#xf…

聚类--谱聚类

前言&#xff1a;关于谱聚类&#xff0c;已经有很多厉害的老师和大牛写过教程博客等&#xff0c;也有很不错的tutorial文章可供参考。此博文仅记述个人的一些总结、思考、疑问&#xff0c;算是对现有谱聚类学习资源的一个小补充。 1. 谱聚类简述 说到聚类&#xff0c;可能最先…

MATLAB 谱聚类

k-means 可以说是思想最简单的聚类了&#xff0c;但是它在应对非凸数据时却显得手足无措&#xff0c;例如如下的数据分类&#xff1a; 各类之间虽然间隔较远&#xff0c;但是非凸&#xff0c;这时候就需要引入谱聚类了(以下为谱聚类效果)。 本文参考 [1]Ulrike von Luxburg. A…

谱聚类算法详解

谱聚类&#xff08;Spectral Clustering&#xff09;算法简单易行&#xff0c;其聚类性能优于传统的K-means算法。谱聚类将数据的划分转化为对图的分割&#xff0c;是一种基于图论的聚类方法&#xff0c;其直观理解为根据图内点的相似度将图分为多个子图&#xff0c;使子图内部…

谱聚类算法简单理解

一、算法思想 谱聚类是基于图论的知识所演化出的算法&#xff0c;在聚类中广泛使用。主要思想是将所有的数据看成空间中的点&#xff0c;这些点之间可以用边连接起来&#xff0c;距离较远的两点之间边的权重值较低&#xff0c;距离较近的两点间边的权重值较高&#xff0c;然后…