格兰杰检验用原始数据还是对数数据还是差分数据(满足什么条件可以做格兰杰检验)
“社会科学中的数据可视化”第432篇推送
引言
在实证分析中,我们经常需要确定因果关系是x导致y,还是y导致x。对此,Granger提出了一种解决方法:如果x是y的原因,且不存在反向因果,则x过去值可以预测y未来值,反之则不然。具体来说,我们建立时间序列模型如下,并提出假设H0: βm=0,m=1,2…p。如果接受该假设,则意味着x过去值不能够预测y未来值;如果拒绝该假设,则可以,即x是y的格兰杰因(Granger cause)。
本次推送中,我们介绍如何在Stata中进行格兰杰因果检验。
基本命令
Stata中格兰杰因果检验有三种方法:前两种方法基本思路大致相同,它们均是先确定最佳滞后期,随后再进行格兰杰因果检验;第三种方法则是先拟合VAR模型,之后再进行检验。具体来说,第一种方法的基本命令为:
reg y l.y l.x
对滞后一期的变量进行回归,也就是说此时
式中p、q的值都为1。
estat ic
显示AIC 与BIC 取值,以便选择最佳滞后期。
reg y l.y l.x l2.y l2.xestat ic
再次显示AIC与BIC取值。
……
根据信息准则确定p, q后,检验所用的命令为test。值得注意的是,这种方法中p和q的取值可以是不同的,以便获得最有说服力的结果。
第二种方法的基本命令为:
ssc install gcause
下载格兰杰因果检验程序gcause
gcause y x, lags( 1)
对滞后一期的变量进行回归。
estat ic
显示AIC与BIC 取值,以便选择最佳滞后期
gcause y x, lags( 2)
滞后2期
estat ic
再次显示AIC与BIC取值,以便选择最佳滞后期。
在选定滞后期后,我们可以使用F检验或者卡方检验进行因果检验。
第三种方法的主要命令是:
vary x
进行向量自回归。
vargranger 操作实例
在这一部分中,我们以第二种方法为例,演示如何在stata中进行因果检验。首先我们在联网状态下导入数据,输入命令如下:
use http: //www.stata-press.com/data/imeus/ukrates, clear
安装gcause格兰杰因果检验程序
ssc install gcause
输出结果如下:
gcause r20 rs, lags( 1)estat icgcause r20 rs, lags( 2)estat ic
依次对滞后一期、滞后两期等变量进行回归,根据AIC及BIC的取值确定最佳的滞后期。在本例中,我们发现p=q=3时AIC及BIC的值最小,因此我们将p和q都赋值为3。滞后三期回归结果如图所示:
我们发现F检验和卡方检验得出一致结论,接受原假设,即rs不是r20的格兰杰因。
注:操作平台为Stata14.0
文章来源:格兰杰因果检验stata操作指南,部分文字进行删改。更多请点击“阅读原文”