出现“command bootstrap r is unrecognized”这样的错误信息,通常意味着Stata不能识别你的命令中的一部分。在你提供的命令里,`r(ind_eff)`和`r(dir_eff)`看起来像是你在尝试访问存储的回归结果,但在bootstrap命令的上下文中这样使用是不被认可的。
解决这个问题的关键在于正确地定义bootstrap要保存的结果。你应该将`sgmediation`命令执行后想要保存的中介效应和直接效应的具体值作为宏来传递给`bootstrap`。这里是一个修正后的示例:
```stata
program define boot_med, rclass
sgmediation y, mv(m) iv(x)
return scalar ind_eff = e(ind_eff)
return scalar dir_eff = e(dir_eff)
end
bootstrap r(ind_eff) r(dir_eff), reps(5000): boot_med
```
在这个例子中,我们首先定义了一个名为`boot_med`的程序。这个程序运行`sgmediation`命令,并通过`return scalar`语句保存中介效应(indirect effect)和直接效应(direct effect)。然后,我们在`bootstrap`命令中调用这个程序,并指定想要从每次bootstrap重复采样中存储的结果。
记住要确保你的命令集中的`sgmediation`是可执行的并且你正确地处理了任何所需的参数。此外,检查是否已安装`sgmediation`或其版本与你的Stata版本兼容也是必要的。
希望这能帮助你解决问题!如果还有其他问题,请随时提问。
此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用