自学内容网 自学内容网

基于 IV 的因果中介分析模型及 Stata 实现

目录

一、文献综述

二、理论原理

三、实证模型

四、稳健性检验

五、程序代码及解释


一、文献综述

因果中介分析在众多学科领域中都占据着关键地位,其重要性日益凸显。在社会科学领域,如经济学和社会学中,研究者们常常致力于揭示各种因素之间的复杂因果关系以及潜在的传导机制。

在传统因果中介分析方法的发展历程中,众多学者做出了卓越贡献。Baron 和 Kenny(1986)提出了经典的逐步回归法用于检验中介效应,为后续研究奠定了基础。然而,传统方法在存在内生性问题时往往会导致估计偏差,这极大地限制了其应用范围。

为了解决内生性问题,基于工具变量(IV)的因果中介分析方法逐渐成为研究热点。Imai 等人(2010)对基于 IV 的因果中介分析进行了深入探讨,提出了一系列有效的估计方法和检验策略。他们的研究强调了工具变量选择的重要性以及在不同情境下的适用性。

此外,VanderWeele(2015)进一步拓展了基于 IV 的因果中介分析理论,提出了新的稳健性检验方法和敏感性分析框架。他的工作为研究者在面对复杂数据和潜在内生性问题时提供了更全面的分析工具。

综上所述,基于 IV 的因果中介分析方法在理论和实证研究中都取得了显著进展,为我们理解复杂的因果关系提供了有力的工具。

 

二、理论原理

(一)因果中介分析的基本概念

因果中介分析旨在探究自变量对因变量的影响过程中,是否存在一个或多个中介变量起到传导作用。简单来说,就是要揭示自变量是如何通过中介变量来影响因变量的。例如,在研究教育水平对收入的影响时,可能会考虑工作经验作为中介变量。教育水平可能会提高个人的知识和技能,从而增加工作经验,进而提高收入。

  1. 总效应(Total Effect):指的是在不考虑中介变量的情况下,自变量对因变量的直接影响。例如,教育水平对收入的总体影响。
  2. 直接效应(Direct Effect):当控制了中介变量后,自变量对因变量的直接影响。在上述例子中,控制了工作经验后,教育水平对收入的影响。
  3. 间接效应(Indirect Effect):通过中介变量传导的影响,即总效应减去直接效应。在这个例子中,教育水平通过增加工作经验对收入产生的影响。

(二)内生性问题

内生性是指模型中的一个或多个解释变量与误差项相关。在因果中介分析中,如果中介变量与误差项相关,就会产生内生性问题。内生性问题可能由多种原因引起,例如:

  1. 遗漏变量:如果存在一些未被纳入模型的变量,这些变量既影响中介变量又影响因变量,就会导致内生性。
  2. 测量误差:如果对变量的测量存在误差,也可能导致内生性。
  3. 双向因果关系:当中介变量和因变量之间存在双向因果关系时,也会产生内生性。

内生性问题会导致估计结果的偏差,使得我们对因果关系的推断不准确。

(三)基于 IV 的因果中介分析

为了解决内生性问题,可以引入工具变量。工具变量需要满足两个关键条件:

  1. 相关性:工具变量与内生变量相关。在因果中介分析中,工具变量应该与中介变量相关。
  2. 外生性:工具变量与误差项不相关。这意味着工具变量不能通过其他途径直接影响因变量,只能通过影响中介变量来间接影响因变量。

通过找到合适的工具变量,可以利用两阶段最小二乘法(2SLS)等方法来估计因果中介效应。具体步骤如下:

第一阶段:用工具变量对中介变量进行回归,得到中介变量的预测值。

第二阶段:用自变量和中介变量的预测值对因变量进行回归,得到最终的估计结果。

这样可以有效地解决内生性问题,得到无偏的估计结果。

三、实证模型

四、稳健性检验

为了验证基于 IV 的因果中介分析结果的稳健性,可以进行以下检验:

(一)改变工具变量
选择不同的工具变量进行估计,观察结果是否稳定。如果不同的工具变量都得到相似的结果,说明估计结果具有稳健性。

(二)增加控制变量
在模型中加入更多的控制变量,看结果是否发生变化。如果加入控制变量后,结果仍然保持稳定,说明估计结果不受其他因素的影响。

(三)改变样本范围
对不同的样本子集进行分析,检查结果的一致性。例如,可以按照不同的地区、时间或其他特征划分样本,看估计结果在不同子样本中的表现。

五、程序代码及解释

// 导入数据
use "your_data.dta", clear

// 安装必要的命令
ssc install ivmediate

// 设定变量
global y "your_dependent_variable"
global x "your_independent_variable"
global m "your_mediator_variable"
global z "your_instrument_variable"

// 检查数据基本情况
summarize $y $x $m $z
describe $y $x $m $z

// 进行总效应回归
regress $y $x
est store TotalEffect

// 解释:对因变量 $y 和自变量 $x 进行回归,得到总效应的估计结果并存储在 TotalEffect 中。

// 进行直接效应回归
regress $y $x $m
est store DirectEffect

// 解释:对因变量 $y、自变量 $x 和中介变量 $m 进行回归,得到直接效应的估计结果并存储在 DirectEffect 中。

// 计算间接效应
qui: nlcom (_b[$x:TotalEffect]-_b[$x:DirectEffect])
est store IndirectEffect

// 解释:通过计算总效应回归中自变量系数减去直接效应回归中自变量系数,得到间接效应,并存储在 IndirectEffect 中。

// 显示总效应、直接效应和间接效应的结果
esttab TotalEffect DirectEffect IndirectEffect using "results.rtf", ///
    title("Causal Mediation Analysis Results") replace ///
    compress nogap nonumbers se r2 ar2

// 解释:将总效应、直接效应和间接效应的结果输出到一个富文本文件 results.rtf 中,包括标题、压缩格式、不显示数字、标准误、决定系数等信息。

// 使用工具变量进行中介分析
ivmediate $y $x ($m = $z), first stage($m $z $x) endog($m)

// 解释:使用工具变量 $z 进行因果中介分析,first stage 选项指定第一阶段回归为中介变量 $m 对工具变量 $z 和自变量 $x 的回归,endog 选项指定中介变量 $m 为内生变量。

// 保存第一阶段回归结果
estimates store FirstStage

// 解释:将第一阶段回归结果存储在 FirstStage 中。

// 保存第二阶段回归结果
estimates store SecondStage

// 解释:将第二阶段回归结果存储在 SecondStage 中。

// 显示第一阶段回归结果
esttab FirstStage using "first_stage_results.rtf", ///
    title("First Stage Regression Results") replace ///
    compress nogap nonumbers se r2 ar2

// 解释:将第一阶段回归结果输出到一个富文本文件 first_stage_results.rtf 中,包括标题、压缩格式、不显示数字、标准误、决定系数等信息。

// 显示第二阶段回归结果
esttab SecondStage using "second_stage_results.rtf", ///
    title("Second Stage Regression Results") replace ///
    compress nogap nonumbers se r2 ar2

// 解释:将第二阶段回归结果输出到一个富文本文件 second_stage_results.rtf 中,包括标题、压缩格式、不显示数字、标准误、决定系数等信息。

// 稳健性检验:改变工具变量
global new_z "your_new_instrument_variable"
ivmediate $y $x ($m = $new_z), first stage($m $new_z $x) endog($m)
estimates store NewFirstStage
estimates store NewSecondStage
esttab NewFirstStage using "new_first_stage_results.rtf", ///
    title("New First Stage Regression Results") replace ///
    compress nogap nonumbers se r2 ar2
esttab NewSecondStage using "new_second_stage_results.rtf", ///
    title("New Second Stage Regression Results") replace ///
    compress nogap nonumbers se r2 ar2

// 解释:设定新的工具变量 new_z,使用新工具变量进行因果中介分析,存储新的第一阶段和第二阶段回归结果,并输出到相应的文件中,以检验结果对工具变量变化的稳健性。

// 稳健性检验:增加控制变量
global control_var "your_control_variable"
regress $y $x $m $control_var
est store DirectEffectWithControl
qui: nlcom (_b[$x:TotalEffect]-_b[$x:DirectEffectWithControl])
est store IndirectEffectWithControl
esttab TotalEffect DirectEffectWithControl IndirectEffectWithControl using "results_with_control.rtf", ///
    title("Causal Mediation Analysis Results with Control Variable") replace ///
    compress nogap nonumbers se r2 ar2

// 解释:设定控制变量 control_var,加入控制变量进行回归得到新的直接效应估计,计算新的间接效应,并将总效应、新直接效应和新间接效应结果输出到文件中,以检验结果对控制变量加入的稳健性。

// 稳健性检验:改变样本范围
if `c(year)' < 2020 {
    regress $y $x
    est store TotalEffectSubset
    regress $y $x $m
    est store DirectEffectSubset
    qui: nlcom (_b[$x:TotalEffectSubset]-_b[$x:DirectEffectSubset])
    est store IndirectEffectSubset
    esttab TotalEffectSubset DirectEffectSubset IndirectEffectSubset using "results_subset.rtf", ///
        title("Causal Mediation Analysis Results for Subset") replace ///
        compress nogap nonumbers se r2 ar2
}

// 解释:如果数据中的年份变量小于 2020,则对特定子样本进行回归分析,计算总效应、直接效应和间接效应,并输出结果到文件中,以检验结果对样本范围变化的稳健性。

Stata:基于IV的因果中介分析-ivmediate (lianxh.cn)icon-default.png?t=O83Ahttps://www.lianxh.cn/details/914.html


原文地址:https://blog.csdn.net/a519573917/article/details/142492131

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!