Stata:因果中介分析大比拼-T323

文摘   教育   2024-11-19 22:00   山西  


👇 连享会 · 推文导航 | www.lianxh.cn

🍓 课程推荐:2024 机器学习与因果推断专题
主讲老师:司继春 (上海对外经贸大学) ;张宏亮(浙江大学)
课程时间:2024 年 11 月 9-10 日 ;16-17日
课程咨询:王老师 18903405450(微信)

 课程特色 · 2024机器学习与因果推断

  • 懂原理、会应用。本次课程邀请了两位老师合作讲授,目的在于最大限度地实现理论与应用的有机结合。为期四天的课程,分成两个部分:第一部分讲解常用的机器学习算法和适用条件,以及文本分析和大语言模型;第二部分通过精讲 4-6 篇发表于 Top 期刊的论文,帮助大家理解各类机器学习算法的应用场景,以及它们与传统因果推断方法的巧妙结合。
  • 以 Top 期刊论文为范例。目前多数人的困惑是不清楚如何将传统因果推断方法与机器学习结合起来。事实上,即便是 MIT 和 Harvard 的大牛们也都在「摸着石头过河」。为此,通过论文精讲和复现来学习这部分内容或许是目前最有效的方式了。张宏亮老师此前在浙江大学按照这一模式教授了「因果推断和机器学习」课程,效果甚佳:学生们能够逐渐建立起研究设计的理念,并在构造识别策略时适当地嵌入机器学习方法。

   

作者:曹琳君 (南开大学)
邮箱:linjuncao@yeah.net

编者按:本文主要摘译自下文,特此致谢!
Source:Valente M J, Rijnhart J J M, Smyth H L, et al. Causal Mediation Programs in R, M plus, SAS, SPSS, and Stata[J]. Structural Equation Modeling: A Multidisciplinary Journal, 2020, 27(6): 975-984. -Link-


目录

  • 1. 简介

  • 2. 理论背景

  • 3. 不同软件的因果中介分析比较

  • 4. 案例演示

  • 5. 小结

  • 6. 参考资料

  • 7. 相关推文



1. 简介

中介分析是一种用于理解自变量 如何以及为什么通过中介 将其影响传递给因变量 的方法。基于潜在结果框架和反事实框架的新因果中介方法是中介分析的一个开创性进展,受到研究者越来越多的关注。这一趋势也导致了 SAS、Stata、SPSS、R 和 Mplus 中关于因果中介分析的新软件程序、例程和宏的爆炸式增长。面对如此多样的工具,研究者将如何取舍?

本文在 Valente 等 (2020) 的基础上,分析了因果中介的理论背景、比较了五种软件在处理因果中介机制时的异同,并给出详细的建议供研究者选择。

🍏 相关推文:med4way:中介效应和交互效应分析

2. 理论背景

基于潜在结果框架和更普遍的反事实框架的因果中介分析 (Holland, 1986;Rubin,1974) 提供了在随机实验和非随机研究中确定因果效应的一般定义和假设。这些因果关系定义和假设的公认优点之一是,它们不基于任何特定的估计方法,因此是非参数的。它们可以应用于任何中介模型,包括具有连续和分类变量的模型,以及具有干预-中介 () 交互的模型。

因果效应的定义基于的假设是,每个独立的个体对于干预的每个维度都有潜在的结果值 (Holland,1986;Rubin,1974)。例如,假设干预 是具有两个维度的二元变量,即 ,那么每个独立的个体 (设为 ) 都有一个结果 ,即在 维度,为 ,在 维度,为 。个体层面的因果效应为

然而,观察到每个个体在两个维度的结果是不可能的。也就是说,对于被分配到等级 的个体,将观察到 而不是 ,而对于被分配到等级 的个体,将观察到 而不是 。这种无法同时获得一个个体在每种情况下的结果测量被称为 “因果推理的基本问题” (Holland, 1986)。然而,在假设干预组和对照组没有混杂的情况下,可以在平均水平上估计因果干预效应,即

当因果效应被运用到中介模型时, 的平均维度潜在结果值 (the average-level potential outcome values for Y) 基于不同的中介维度和不同的干预维度来定义和估计。也就是说, 表示当将个体固定在预定的中介值 时,在对照组中观察到的个体的 值,而 表示当将个体固定在预定的中介值 时,在实验组中观察到的个体的 值。

中介效应也可以保持一个固定的观测值。如果该个体在对照组中,即 ,或如果该个体在实验组中,即 。这使潜在结果可以扩展到 。例如,潜在结果 表示当中介变量取值被固定在在实验组中所观察到的值时,实验组中个体的平均结果值。实验组个体可观察到 ,对照组个体可观察到 。而两种潜在结果 不能在个体水平上被观察,但可以在平均水平上估计。

因果直接效应、间接效应和总效应被定义为两种潜在结果之间的差异。一共有 6 种因果效应,具体如下:

  • 总的自然间接效应  (total natural indirect effect)。总的自然间接效应 () 是当直接效应在 维度上保持不变时, 通过 的影响;
  • 纯天然间接效应  (pure natural indirect effect)。纯自然间接效应 () 是当直接效应在对照组水平 维度上保持不变时, 通过 的影响;
  • 总的自然直接效应 (total natural direct effect)。总的自然直接效应 () 是当每个个体的中介变量被固定在如果个人在实验组中可以被自然观测到的值时 (例如, 的效应;
  • 纯天然直接效应 (pure natural direct effect)。纯自然直接效应 () 是当每个个体的中介变量被固定在如果个体在对照中可以被自然观测到的值时 (例如, 的效应;
  • 被控制的直接效应 (controlled direct effect)。被控制的直接效应 () 是当所有个体的中介变量被固定在预定值 时, 的效应;
  • 总效应 (total effect)。总效应 () 是 的影响,等于 的和,或等于 的和。

3. 不同软件的因果中介分析比较

不同软件包在因果中介分析中的特征如图 1.1 和图 1.2 所示,图片引用自原文。

图 1.1:不同软件包因果中介分析中的特征上
图 1.2:不同软件包因果中介分析中的特征下

结合不同软件包的具体使用情况,本文给出进行因果中介分析的软件选择建议,如图 2 所示。

图 2:不同软件的具体适用情况推荐 (编译作者根据原文整理)
  • 当模型是单一的中介模型且 是二元变量, 是连续变量并有 (或没有) 的交互作用时,不同软件程序提供了几乎相同的效果估计、相似的 bootstrap 置信区间和相似的计算时间;
  • 在存在并非完全随机缺失的缺失数据的情况下,最好使用最大似然或多重插补。Mplus 为用户提供了使用最大似然或多重插补的选项。R 语言的 mediation package 和 medflex package 允许多重插补;
  • 和/或 代表未观察到的变量时,Mplus 提供了一种可能性,可以使用经过理论和统计验证的测量模型将这些结构视为潜在变量 (Muthén 等,2017);
  • 当研究者有一个多分类的干预变量时,R 语言的 mediation package 和 medflex package 可以应对这种情况。

4. 案例演示

接下来,我们将用 Stata 自带数据「nlsw88」演示使用 medeff 命令进行因果中介分析的方法。

首先,安装命令及调入数据。

.*下载程序文件
. net install st0243_1.pkg, from(http://www.stata-journal.com/software/sj12-2/) replace

.*下载作者范例 do 文档
. net get st0243_1.pkg, from(http://www.stata-journal.com/software/sj12-2/) replace

.*或者手动安装
. search medeff
. sysuse nlsw88.dta, clear
(NLSW, 1988 extract)

. *根据命令运行需要,我们将数据随机分成实验组和控制组,并假设数据满足因果中介分析的分组条件。
. generate T = round(runiform(),1)

在该数据集中,解释变量为 married,即婚姻状态 (1=已婚,0=未婚);中介变量为 age,即年龄;被解释变量为 wage,即工资;分组变量为 T (1=实验组,0=控制组)。

. des

Contains data from D:\Programs\stata16\ado\base/n/nlsw88.dta
obs: 2,246 NLSW, 1988 extract
vars: 18 1 May 2018 22:52
(_dta has notes)
--------------------------------------------------------------------------------------------------
storage display value
variable name type format label variable label
--------------------------------------------------------------------------------------------------
idcode int %8.0g NLS id
age byte %8.0g age in current year
race byte %8.0g racelbl race
married byte %8.0g marlbl married
never_married byte %8.0g never married
grade byte %8.0g current grade completed
collgrad byte %16.0g gradlbl college graduate
south byte %8.0g lives in south
smsa byte %9.0g smsalbl lives in SMSA
c_city byte %8.0g lives in central city
industry byte %23.0g indlbl industry
occupation byte %22.0g occlbl occupation
union byte %8.0g unionlbl union worker
wage float %9.0g hourly wage
hours byte %8.0g usual hours worked
ttl_exp float %9.0g total work experience
tenure float %9.0g job tenure (years)
T float %9.0g
--------------------------------------------------------------------------------------------------
Sorted by: idcode
Note: Dataset has changed since last saved.

其次,运行 medeff 命令,具体命令格式如下:

. medeff (regress age T married) (regress wage T age  married ), ///
> treat(T) mediate(age) sims(1000)
Using 0 and 1 as treatment values

Source | SS df MS Number of obs = 2,246
---------+---------------------------------- F(2, 2243) = 0.31
Model | 5.82773057 2 2.91386529 Prob > F = 0.7327
Residual | 21015.4848 2,243 9.36936461 R-squared = 0.0003
---------+---------------------------------- Adj R-squared = -0.0006
Total | 21021.3126 2,245 9.36361361 Root MSE = 3.0609
--------------------------------------------------------------------------
age | Coef. Std. Err. t P>|t| [95% Conf. Interval]
---------+----------------------------------------------------------------
T | -.0272285 .1293771 -0.21 0.833 -.2809399 .2264828
married | -.1015552 .1347852 -0.75 0.451 -.365872 .1627616
_cons | 39.23133 .1230492 318.83 0.000 38.99003 39.47264
--------------------------------------------------------------------------
Source | SS df MS Number of obs = 2,246
---------+---------------------------------- F(3, 2242) = 2.26
Model | 224.409397 3 74.8031322 Prob > F = 0.0794
Residual | 74143.558 2,242 33.0702756 R-squared = 0.0030
---------+---------------------------------- Adj R-squared = 0.0017
Total | 74367.9674 2,245 33.1260434 Root MSE = 5.7507
--------------------------------------------------------------------------
wage | Coef. Std. Err. t P>|t| [95% Conf. Interval]
---------+----------------------------------------------------------------
T | .0207734 .2430667 0.09 0.932 -.4558859 .4974328
age | -.0692555 .0396688 -1.75 0.081 -.1470469 .008536
married | -.4965241 .2532568 -1.96 0.050 -.9931663 .0001182
_cons | 10.78741 1.573337 6.86 0.000 7.702057 13.87276
--------------------------------------------------------------------------

--------------------------------------------------------------------------
Effect | Mean [95% Conf. Interval]
-------------------------------+------------------------------------------
ACME | .0017282 -.0202188 .0232875
Direct Effect | .0315363 -.4083132 .4908015
Total Effect | .0332645 -.4082737 .4941851
% of Tot Eff mediated | .0040861 -.1086679 .1275682
-------------------------------------------------------------------------

结果表明,婚姻对工资的平均直接效应为 0.0315363,年龄的平均中介效应为 0.0017282,婚姻对工资的总效应为 0.0332645。

5. 小结

相比于传统的中介分析,因果中介分析可以处理一些更复杂的情况,比如 的交互作用。然而因果中介分析对复杂情况的适应性也决定了它的分析过程比传统中介分析更为复杂。因此,在进行因果中介分析时,大家一定要小心分析,谨慎选择对应软件程序。

6. 参考资料

温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」,或直接长按/扫描如下二维码,直达原文:

  • Valente M J, Rijnhart J J M, Smyth H L, et al. Causal Mediation Programs in R, M plus, SAS, SPSS, and Stata[J]. Structural Equation Modeling: A Multidisciplinary Journal, 2020, 27(6): 975-984. -Link-
  • Holland P W. Statistics and causal inference[J]. Journal of the American statistical Association, 1986, 81(396): 945-960. -Link-
  • Rubin D B. Estimating causal effects of treatments in randomized and nonrandomized studies[J]. Journal of educational Psychology, 1974, 66(5): 688. -Link-
  • Muthén B O, Muthén L K, Asparouhov T. Regression and mediation analysis using Mplus[M]. Los Angeles, CA: Muthén & Muthén, 2017. -Link-
  • Mplus User’s Guide. -Link-, -PDF-

7. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh 中介 调节, m
安装最新版 lianxh 命令:
ssc install lianxh, replace

温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」

  • 专题:Stata教程
    • med4way:中介效应和交互效应分析
  • 专题:交乘项-调节
    • interactplot:图示交乘项-交互项-调节效应
    • Stata:图示交互效应-调节效应
    • Stata:调节中介效应检验.md
    • Stata+R:一文读懂中介效应
    • 离散型调节变量——该如何设定模型?

🍓 课程推荐:2024 机器学习与因果推断专题
主讲老师:司继春 (上海对外经贸大学) ;张宏亮(浙江大学)
课程时间:2024 年 11 月 9-10 日 ;16-17日
课程咨询:王老师 18903405450(微信)

尊敬的老师 / 亲爱的同学们:

连享会致力于不断优化和丰富课程内容,以确保每位学员都能获得最有价值的学习体验。为了更精准地满足您的学习需求,我们诚挚地邀请您参与到我们的课程规划中来。请您在下面的问卷中,分享您 感兴趣的学习主题或您希望深入了解的知识领域 。您的每一条建议都是我们宝贵的资源,将直接影响到我们课程的改进和创新。我们期待您的反馈,因为您的参与和支持是我们不断前进的动力。感谢您抽出宝贵时间,与我们共同塑造更加精彩的学习旅程!https://www.wjx.cn/vm/YgPfdsJ.aspx# 再次感谢大家宝贵的意见!

New! Stata 搜索神器:lianxh 和 songbl  GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
  . ssc install lianxh
  . ssc install songbl
👉  使用:
  . lianxh DID 倍分法
  . songbl all

🍏 关于我们

  • 连享会 ( www.lianxh.cn,推文列表) 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。

连享会
连玉君老师团队分享,主页:lianxh.cn。白话计量,代码实操;学术路上,与君同行。
 最新文章