基于stata的medsens包进行中介效应分析

中介变量(mediator) 是一个重要的统计概念,如果自变量 X 通过某一变量 M 对因变量 Y 产生一定影响,则称 M 为 X 和 Y 的中介变量。我们既往已经介绍了SPSS和R语言行中介效应分析,今天继续介绍stata中介效应分析,大家都在介绍sgmediation包,我就不说了。Imai, Kosuke, Luke Keele and Dustin Tingley (2010)的文章指出,做中介效应还应进行敏感性分析。 mediation包相比sgmediation包的优势是能进行敏感性分析,和R语言mediation包是同一作者,而且mediation包已经登上了stata官方期刊,可靠性绝对没有问题。
在这里插入图片描述
OK,废话不多说,马上开始。我们先来安装这个包
点击帮助—搜索
在这里插入图片描述
点击网络搜索—medeff
在这里插入图片描述
安装st0243就可以了
在这里插入图片描述
安装好后我们就开始正式分析了。我们继续使用我们的移民数据(公众号回复:移民数据,可以获得数据),我们先导入数据,我直接复制黏贴
在这里插入图片描述
数据很多,我们来看看我们关心的几个数据。
Emo:焦虑状态,通过量表来评分,treat:治疗,分为有治疗和未治疗,age:年龄,educ:教育程度,gender:性别,income:收入,cong_mesg:发送移民信息,二分类变量,也是结局变量
假设我们想知道,我们可以不可以通过治疗来改变患者的焦虑状态,从而改变患者移民这一举动。这样的话,焦虑状态emo就是中介变量,cong_mesg:发送移民信息为结局变量,我们先来看看stata做中介效应的格式
在这里插入图片描述
我来好好解释一下,medeff是这个包的中介效应的函数名,(regress M T x) 和 (regress Y T M x),等于要建立两个回归方程,第一个是中介变量和原因变量的,第二个是结局变量和中介变量的。这里M表示中介变量,T表示因变量,X表示调整变量,Y表示结局变量,regress用于线性回归,sims为指定贝叶斯运行的模拟次数,seed为设定一个种子,让结果有可重复性。
我们这里的中介变量emo是连续变量,所以第一个回归方程使用regress,第二个我们的结局是二分类变量,所以使用logit。

medeff (regress emo treat age ) (logit  cong_mesg treat emo age ) , treat( treat) mediate( emo ) sims(1000)

在这里插入图片描述
很简单,结果就出来啦,我们可以看到总效应等于中介效应+直接效应。直接效应的可信区间包含0了,说明P大于0.05,表明直接效应影响不大,自变量主要是通过中介效应影响结局,也就是移民。
进一步绘图

medsens (regress emo treat age ) (logit  cong_mesg treat emo age ) , eps(.01) med( emo ) treat( treat ) sims(1000) level(95) graph

在这里插入图片描述
上图标出了rho,可信区间和R方,这里rho等于0.5
在这里插入图片描述
Y表示中介效应值,X表示敏感度关于rho。红线表示混杂效应导致中介效应消失时rho的值(有点拗口,自己体会一下),因此得出rho的绝对值越高,中介效应越可靠。
如果你想修改图片的细节,如颜色,区间,标题等

twoway rarea _med_updelta0 _med_lodelta0 _med_rho, bcolor(gs14) || line _med_delta0 _med_rho , lcolor(black) ,ylabel(-0.2(.1)0.2) ytitle("Average mediation effect") xtitle("Sensitivity parameter: p") legend(off) title("ACME(p)")

在这里插入图片描述
总的来说stata的mediation包行中介效应分析挺简单的。

参考文献:

  1. Imai, Kosuke, Luke Keele and Dustin Tingley (2010) A General Approach to Causal Mediation Analysis, Psychological Methods 15(4) pp. 309-334.

  2. Imai, Kosuke, Luke Keele and Teppei Yamamoto (2010) Identification, Inference, and Sensitivity Analysis for Causal Mediation Effects, Statistical Sciences, 25(1) pp. 51-71.

  3. Imai, Kosuke, Luke Keele, Dustin Tingley, and Teppei Yamamoto. (2009) “Causal Mediation Analysis Using R” in Advances in Social Science Research Using R, ed. H. D. Vinod New York: Springer.
    Forthcoming.

### 回答1: 在Stata中,bootstrap是一种统计方法,用于通过从样本中进行重复抽样来估计统计量的抽样分布,从而进行推断。Bootstrap可以用于计算任何样本统计量的置信区间或标准误,例如均值、中位数、方差等。 Stata中的bootstrap命令允许用户进行自助重抽样,并计算所选统计量的置信区间、标准误等。该命令有许多选项,可用于控制bootstrap的行为,例如指定重抽样次数、抽样方法、置信水平等。 使用bootstrap命令的一般语法如下: ``` bootstrap statistic [exp], reps(#) [options] ``` 其中,`statistic`是要计算的统计量(例如均值、中位数、方差等),`exp`是要应用的表达式(例如如果要计算均值,则为变量名),`reps`是要进行的重复抽样次数,`options`是一组可选的选项,例如设置置信水平等。 例如,要计算数据集中变量“price”的均值,并使用1000次重复抽样计算置信区间,可以执行以下命令: ``` bootstrap mean price, reps(1000) ``` 此命令将计算价格变量的均值,并对该均值进行1000次重复抽样,以估计其抽样分布。该命令还将计算该均值的标准误和95%置信区间,并将结果输出到Stata结果窗口。 希望这能回答你的问题! ### 回答2: 在回答这个问题之前,我们首先需要了解什么是中介效应中介效应是指一个自变量对因变量有影响,但是这个影响并不是直接的,而是通过中介变量来实现的,这个中介变量会影响到因变量的变化。在实际的研究中,我们需要用统计学的方法对中介效应进行分析,而bootstrap作为一种常用的统计学方法,也可以用来分析中介效应。 具体的步骤如下: 1. 首先,我们需要准备好数据,并对数据进行清洗和变量的选择。如果你已经有了一个模型,那么需要确定哪些变量是自变量、中介变量和因变量,并将它们转化为变量名称。 2. 接下来,我们需要用stata软件来进行中介效应分析。在进行中介分析前,我们需要进行多重线性回归分析,从而确定中介变量的作用是否存在。在这个分析中,自变量是原始自变量,因变量是原始因变量,中介变量是指在原始自变量和原始因变量之间发生的关系。 3. 开始运用bootstrap方法进行中介效应分析。在stata软件中,运用bootstrap可以使用command line来进行。首先,我们需要设置一个循环量,然后对数据进行随机抽样,并重复进行回归模型的计算。完成后我们可以获得中间分析的平均值和标准误差值。 4. 最后,我们需要对结果进行解释。可以使用统计学中的直接效应和间接效应变量来进行解释。直接效应是指原始自变量对因变量的影响,而间接效应则是指原始自变量通过中介变量对因变量的影响。我们可以根据中介效应的大小和统计学显著性来判断中介变量的作用强弱。 总之,Stata做bootstrap中介效应的步骤是非常简单的。可以先通过回归分析确定中介变量的作用是否存在,然后使用bootstrap方法进行分析得到平均值和标准误差值。最后我们需要对结果进行解释,并根据中介效应的大小和统计学显著性来判断中介变量的作用强弱。 ### 回答3: Bootstrap是一种非参数统计方法,通过从原始数据中不断随机抽样形成bootstrap样本,从而对原始数据的统计量(如均值、方差等)进行估计。Bootstrap方法在中介效应分析中的应用非常广泛,可以通过bootstrap方法来估计中介效应的标准误、置信区间等,从而更准确地评估中介效应的稳健性。 在Stata进行bootstrap中介效应分析的一般步骤如下: 1. 导入数据。首先将需要分析的数据导入Stata中,并将自变量、中介变量、因变量以及可能的控制变量进行标记。 2. 构建回归模型。利用Stata中的回归分析工具(如regress, logit等)建立中介效应分析的回归模型,同时设置控制变量、权重系数等。 3. 进行中介效应分析。利用mediation命令进行中介效应分析,其中需要设置自变量、中介变量、因变量的标签以及分析方法(如检验偏差、画直接效应图、画间接效应图等)。 4. 进行bootstrap。利用bootstrap命令进行bootstrap分析,在该命令中需要设置bootstrap次数、分析方法、回归模型等分析参数。bootstrap分析会从原始数据中不重复地随机抽取多次bootstrap样本进行回归分析,从而估计中介效应的标准误、置信区间等统计参数。 5. 呈现分析结果。利用Stata提供的绘图、表格等工具将bootstrap分析结果呈现出来,便于进一步分析和解释。 总之,Stata做bootstrap中介效应是一种常见且精确的数据分析方法,在实际中介效应分析中具有广泛的应用价值。通过利用Stata的回归分析和bootstrap命令,可以准确地评估中介效应的置信区间和稳健性,为实际问题的解决提供有力的支持。
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天桥下的卖艺者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值