我在保存Stata循环内不同回归的边际效应时遇到问题

问题描述 投票:-1回答:1

大家好,我正在使用一个简单的循环来运行五个不同的回归并保存边际效应(不是所有的解释变量,而是几年),以便稍后用coefplot对其进行绘图。

代码如下:

foreach x in Qualifica2 Qualifica3 Qualifica4 Qualifica5 Qualifica6 {
    xtreg one_y_unemp year* AG* MR* female if `x' == 1
    margins, dydx(year*) post
    estimates store me_`x'
    }

我不知道为什么,但是括号内的最后一行没有循环,因此我的估算值没有保存。我怎么解决这个问题?谢谢您的帮助。

P.s。在切换到xtreg之前,我使用了一个probit模型,这就是为什么我使用margins命令的原因,并且由于我不知道如何以其他方式一直只保存某些系数。如果您在这方面也有建议,那会很好,因为运行margins命令会花费很多时间。

As you can see, after running the margins output it goes to the following iteration, skipping the estimates store command

loops stata marginal-effects
1个回答
0
投票
此处简单地将eststo(用户编写的命令作为SSC上estout套件的一部分提供的用户写命令)直接与xtreg一起使用会更有效。由于这是线性回归,因此无需在估算后指定margins。以下内容可能足以满足您的需求:

foreach x in Qualifica2 Qualifica3 Qualifica4 Qualifica5 Qualifica6 { eststo: xtreg one_y_unemp year* AG* MR* female if `x' == 1 }

然后,您可以参考将要存储为est1est2,...的估算值,前提是您以前没有存储估算值。这也将与coefplot交互,并且您可以通过指定(例如)coefplot, keep(year*)仅保留某些变量。
© www.soinside.com 2019 - 2024. All rights reserved.