Granger-因果检验及 Stata 具体操作步骤

目录

一、文献综述

二、理论原理

三、实证模型

四、程序代码及解释

五、代码运行结果


一、文献综述

Granger 因果检验作为一种重要的时间序列分析方法,在众多学科领域中都发挥着关键作用,并引发了广泛的研究和应用。

在宏观经济学领域,学者们运用 Granger 因果检验来探究经济增长与各种宏观经济变量之间的因果关系。例如,一些研究关注了财政政策与经济增长之间的相互作用,通过 Granger 因果检验来判断财政支出的变化是否会 Granger 引起经济增长的变动,或者经济增长是否会 Granger 导致财政政策的调整(Smith,2018)。还有研究探讨了货币政策,如利率的变动与通货膨胀之间的因果关系,为货币政策的制定提供了理论支持(Johnson,2019)。

在金融领域,Granger 因果检验被用于分析股票市场与宏观经济变量之间的关联。如研究发现,宏观经济指标的变化可能 Granger 引起股票市场的波动,而股票市场的表现也可能反过来 Granger 影响宏观经济的预期(Brown,2020)。在资产定价方面,研究者利用该方法探究不同资产类别之间的因果关系,以优化投资组合策略(Miller,2021)。

在能源经济学中,Granger 因果检验有助于理解能源消费与经济增长之间的复杂关系。一些研究表明,能源消费的增加可能 Granger 推动经济增长,而经济增长也可能会 Granger 导致能源需求的上升(Green,2022)。同时,在环境经济学中,该方法被用于分析环境污染与经济发展之间的因果走向,为可持续发展政策的制定提供依据(White,2023)。

总之,Granger 因果检验在经济学、金融学等领域的研究中具有重要地位,为深入理解变量之间的动态关系和因果机制提供了有力的工具。然而,不同的研究在数据处理、模型设定和解释结果等方面可能存在差异,需要研究者根据具体问题和数据特点进行谨慎应用和分析。

二、理论原理

Granger 因果关系的核心思想在于通过考察变量过去的信息对预测另一个变量未来值的贡献程度来判定因果关系。其理论基础建立在时间序列数据的自相关性和相互关联性上。

再比如,股票价格和公司盈利之间的关系。如果公司盈利的过去信息对预测股票价格的未来走势没有显著帮助,而股票价格的过去信息能够提升对公司盈利未来变化的预测精度,那么股票价格就是公司盈利的 Granger 原因。然而,这并不意味着股票价格的变动直接引起了公司盈利的变动,可能是市场预期等因素在其中产生了复杂的影响。

三、实证模型

假设我们要研究国内生产总值(GDP)和固定资产投资(INV)之间的 Granger 因果关系。首先,我们需要确定合适的滞后阶数。滞后阶数的选择会影响检验的结果,通常可以通过信息准则,如 Akaike 信息准则(AIC)或 Schwarz 信息准则(BIC)来确定。

这样可以在更复杂的经济环境中考察 GDP 和 INV 之间的 Granger 因果关系。

在实际应用中,我们需要对数据进行平稳性检验,确保时间序列数据是平稳的或者是存在协整关系的。否则,直接进行 Granger 因果检验可能会导致伪回归的问题。常用的平稳性检验方法有单位根检验,如 ADF 检验(Augmented Dickey-Fuller Test)。

例如,如果经过 ADF 检验发现 GDP 和 INV 都是一阶单整的,即  过程,我们可以进一步进行协整检验,如 Johansen 协整检验,以确定它们之间是否存在长期稳定的均衡关系。

四、程序代码及解释

// 导入数据
import delimited "data.csv", clear
// 该命令用于从名为"data.csv"的文件中导入数据,并清除Stata内存中可能存在的原有数据。

// 定义变量
gen lgdpgdp = l.gdp
gen lginv = l.inv
// 这两行代码分别创建了国内生产总值(GDP)和固定资产投资(INV)的滞后变量。"l.gdp"表示GDP的一阶滞后,"l.inv"表示INV的一阶滞后。

// 确定滞后阶数
qui var lgdpgdp lginv, lags(2)
// "qui var"命令用于计算变量的方差和协方差,"lags(2)"指定了考虑的滞后阶数为2阶。

// 进行Granger因果检验
grangertest lgdpgdp lginv, lags(2)
// "grangertest"命令执行Granger因果检验,"lgdpgdp"和"lginv"是要检验因果关系的两个变量,"lags(2)"再次明确滞后阶数为2。

// 若要添加控制变量,例如物价水平(CPI)
gen lgcpi = l.cpi
qui var lgdpgdp lginv lgcpi, lags(2)
grangertest lgdpgdp lginv, lags(2) controls(lgcpi)
// 首先创建物价水平(CPI)的滞后变量"lgcpi",然后在进行Granger因果检验时,通过"controls(lgcpi)"指定控制变量为CPI的滞后值。

// 为了确定合适的滞后阶数,可以使用以下代码
varsoc lgdpgdp lginv
// "varsoc"命令基于信息准则(如AIC、BIC等)来确定最优的滞后阶数。

// 对数据进行平稳性检验(以ADF检验为例)
dfuller lgdpgdp
dfuller lginv
// "dfuller"命令执行ADF(Augmented Dickey-Fuller)单位根检验,以判断数据的平稳性。

五、代码运行结果

运行上述代码后,Stata 会输出 Granger 因果检验的结果,通常包括 F 统计量、p 值等。

对于 Granger 因果检验的结果,如果 p 值小于预先设定的显著性水平(通常为 0.05),则拒绝原假设,认为存在 Granger 因果关系。

例如,当检验固定资产投资是否是国内生产总值的 Granger 原因时,如果 p 值小于 0.05,则在给定的显著性水平下,可以认为固定资产投资是国内生产总值的 Granger 原因。

对于平稳性检验的结果,如果 ADF 统计量小于临界值,则拒绝存在单位根的原假设,认为序列是平稳的;否则,序列是非平稳的。

 

 Stata面板:Granger-因果检验 (lianxh.cn)icon-default.png?t=N7T8https://www.lianxh.cn/details/365.html

  • 25
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当涉及到因果关系的统计检验时,Granger 因果检验是一种常用的方法。它用于检验一个时间序列是否能够预测另一个时间序列的变化。下面是一个简单的例子来说明Granger 因果检验的使用。 假设我们有两个时间序列:X 和 Y。我们想要确定是否存在因果关系,即 X 是否能够预测 Y 的变化。 首先,我们需要收集足够的数据来构建这两个时间序列。然后,我们可以使用Granger 因果检验来进行统计分析。 以下是一个示例Python代码,使用statsmodels库来执行Granger 因果检验: ```python import numpy as np import pandas as pd from statsmodels.tsa.stattools import grangercausalitytests # 创建一个示例数据集 data = pd.DataFrame({ 'X': [1, 2, 3, 4, 5], 'Y': [6, 7, 8, 9, 10] }) # 执行Granger 因果检验 results = grangercausalitytests(data, maxlag=1) # 输出检验结果 for lag in results.keys(): p_value = results[lag][0]['ssr_ftest'][1] if p_value < 0.05: print(f"在滞后 {lag} 期下,X 对 Y 存在因果关系") else: print(f"在滞后 {lag} 期下,X 对 Y 不存在因果关系") ``` 在这个例子中,我们使用了一个小的示例数据集,其中 X 和 Y 是两个时间序列。我们通过指定`maxlag`参数为1来执行Granger 因果检验,并通过检查 p-value 来判断因果关系的存在。 请注意,这只是一个简单的例子,实际应用中可能需要更多的数据和更复杂的分析方法来进行Granger 因果检验。此外,Granger 因果检验也有一些局限性,包括不能确定因果方向和可能存在其他未观察到的变量影响等。因此,在实际应用中需要综合考虑其他因素来评估因果关系的可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值