“社会科学中的数据可视化”第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操作指南,部分文字进行删改。更多请点击“阅读原文”

1.《【Stata教程】格兰杰因果检验》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【Stata教程】格兰杰因果检验》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/jiaoyu/25166.html