楼主: 晶晶哈哈
80162 155

[回归分析求助] stata 中介效应 bootstrap时出现r(ind_eff)找不到   [推广有奖]

91
姚兽兽 发表于 2020-12-15 12:31:43 |只看作者 |坛友微信交流群
晶晶哈哈 发表于 2019-12-2 08:54
另外,想补充一下,如果解释变量是0,1变量的话,我看中介效应前半路径做检验的时候要用logit等,我自己手动 ...
我记得是因变量是虚拟变量才用逻辑回归

使用道具

92
孙晓阳sxy 发表于 2020-12-16 15:42:25 |只看作者 |坛友微信交流群
谢谢楼主的压缩包!已解决问题

使用道具

93
僧究研 发表于 2020-12-24 10:26:48 |只看作者 |坛友微信交流群
晶晶哈哈 发表于 2020-5-13 22:57
挺有的朋友说不能下载了,重新上传一下。这个压缩包比之前那个多一个帮助文件,之前那个忘记放进去了
...
感谢楼主  问题已经成功解决

使用道具

94
z7h8zh78 发表于 2021-1-2 12:42:16 |只看作者 |坛友微信交流群
下载了附件,终于成功了!谢谢楼主!

使用道具

95
邓豆豆2 发表于 2021-1-31 10:49:28 |只看作者 |坛友微信交流群
感谢楼主,解决大问题了

使用道具

96
xiaofangz 发表于 2021-2-3 11:18:50 |只看作者 |坛友微信交流群
奋斗小鸟250 发表于 2020-9-22 17:35
面板数据怎么改啊?兄弟
请问你的这个问题解决了吗,我也是面板数据出不来结果

使用道具

97
xiaofangz 发表于 2021-2-3 11:21:01 |只看作者 |坛友微信交流群
晶晶哈哈 发表于 2020-11-13 21:39
可以百度一下面板数据的中介效应回归。这个ado包确实是截面的。我猜想的话,首先ado里面的reg要改成xtreg ...
楼主,您好。在ado文件没找到有reg的代码呀

使用道具

98
xiaofangz 发表于 2021-2-3 13:34:13 |只看作者 |坛友微信交流群
xiaofangz 发表于 2021-2-3 11:21
楼主,您好。在ado文件没找到有reg的代码呀
好了 改好了 谢谢

使用道具

99
xiaofangz 发表于 2021-2-3 13:35:10 |只看作者 |坛友微信交流群
xiaofangz 发表于 2021-2-3 11:18
请问你的这个问题解决了吗,我也是面板数据出不来结果
*! version 1.11 -- 2/14/12 -- implement prefix option
*! version 1.9 -- 10/28/11 -- (improve formatting)
*! version 1.8 -- 10/19/11 -- (bootstrap option removed)
*! version 1.7 -- 10/14/11 -- (ratio of total to direct)
*! version 1.6 -- 9/27/11 -- (bug fix in sgboot.ado)
*! version 1.5 -- 3/2/11
*! version 1.4 -- 4/29/10 --  
*! version 1.3 -- 10/3/06 -- (bug fix)
*! version 1.2 -- 9/8/06 -- (bug fix)
*! version 1.1.1 -- 5/17/06 --
*! verion 1.0 -- 2/28/05 -- pbe
program define sgmediation, rclass
/* sobel-goodman mediation tests */
version 9.0
syntax varlist(max=1) [if] [in], iv(varlist numeric max=1) ///
   mv(varlist numeric max=1) [ cv(varlist numeric) quietly ///
   level(integer 95) prefix(string)]
marksample touse
markout `touse' `varlist' `mv' `iv' `cv'
tempname coef emat

display
`quietly' {
display as text "Model with dv xtreg on iv (path c)"
`prefix' xtreg `varlist' `iv' `cv' if `touse'
local ccoef=_b[`iv']
local cse =_se[`iv']

display
display "Model with mediator xtreg on iv (path a)"
`prefix' xtreg `mv' `iv' `cv' if `touse'

local acoef=_b[`iv']
local ase  =_se[`iv']
local avar =(_se[`iv'])^2

display
display "Model with dv xtreg on mediator and iv (paths b and c')"
`prefix' xtreg `varlist' `mv' `iv' `cv' if `touse'
}

local bcoef=_b[`mv']
local bse  =_se[`mv']
local bvar =(_se[`mv'])^2

local sobel =(`acoef'*`bcoef')
local serr=sqrt((`bcoef')^2*`avar' + (`acoef')^2*`bvar')
local stest=`sobel'/`serr'
local g1err=sqrt((`bcoef')^2*`avar' + (`acoef')^2*`bvar' + `avar'*`bvar')
local good1=`sobel'/`g1err'
local g2err=sqrt((`bcoef')^2*`avar' + (`acoef')^2*`bvar' - `avar'*`bvar')
local good2=`sobel'/`g2err'
local direff = (`ccoef'-(`acoef'*`bcoef'))
local dse    = _se[`iv']
local toteff = `sobel'/`ccoef'
local ratio = `sobel'/`direff'
local t2d = ((`acoef'*`bcoef')+(`ccoef'-(`acoef'*`bcoef')))/`direff'

display
display as txt "Sobel-Goodman Mediation Tests"
display
display as txt "                     Coef         Std Err     Z           P>|Z|"
display as txt "Sobel               " as res `sobel' _skip(4) `serr'  %8.4g ///
`stest', _skip(5) 2*(1-norm(abs(`stest')))
display as txt "Goodman-1 (Aroian)  " as res `sobel' _skip(4) `g1err' %8.4g ///
`good1', _skip(5) 2*(1-norm(abs(`good1')))
display as txt "Goodman-2           " as res `sobel' _skip(4) `g2err' %8.4g ///
`good2', _skip(5) 2*(1-norm(abs(`good2')))
display
display as txt _col(21) "Coef" _col(31) "Std Err" _col(42) "Z" _col(53) "P>|Z|"
display as txt "a coefficient   = " as res %8.0g `acoef'  "  " %8.0g `ase' "  " %8.0g `acoef'/`ase'  _col(50) %8.0g 2*(1-norm(abs(`acoef'/`ase')))
display as txt "b coefficient   = " as res %8.0g `bcoef'  "  " %8.0g `bse' "  " %8.0g `bcoef'/`bse'  _col(50) %8.0g 2*(1-norm(abs(`bcoef'/`bse')))
display as txt "Indirect effect = " as res %8.0g `sobel'  "  " %8.0g `serr' "  " %8.0g `stest'       _col(50) %8.0g 2*(1-norm(abs(`stest')))
display as txt "  Direct effect = " as res %8.0g `direff' "  " %8.0g `dse' "  " %8.0g `direff'/`dse' _col(50) %8.0g 2*(1-norm(abs(`direff'/`dse')))
display as txt "   Total effect = " as res %8.0g `ccoef'  "  " %8.0g `cse' "  " %8.0g `ccoef'/`cse'  _col(50) %8.0g 2*(1-norm(abs(`ccoef'/`cse')))
display
display as txt "Proportion of total effect that is mediated: ", as res `toteff'
display as txt "Ratio of indirect to direct effect:          ", as res `ratio'
display as txt "Ratio of total to direct effect:             ", as res `t2d'

return scalar ind_eff = `sobel'
return scalar dir_eff = `direff'
return scalar tot_eff = `ccoef'
return scalar a_coef  = `acoef'
return scalar b_coef  = `bcoef'
return scalar ind2tot = `toteff'
return scalar ind2dir = `ratio'
return scalar tot2dir = `t2d'

if "`bootstrap'"~="" {
   display
   display as txt "Percentile and Bias-corrected bootstrap results for Sobel: `reps' replications"
   display

   quietly bootstrap coef=r(sobel), reps(`reps') level(`level'): sgboot `varlist' , mv(`mv') iv(`iv') cv(`cv' )
   estat bootstrap, bc percentile noheader
   }

end
我把前面楼主的代码综合了一下 又改了一下 不知道对不对 可以运行

使用道具

100
18349364456 在职认证  发表于 2021-2-10 23:22:31 |只看作者 |坛友微信交流群
楼主你好,请问我下载您分享的文件后,无法打开是什么问题,烦请解答

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-2 10:30