如何 运行 时不变子组的 FE 回归(在 Stata 中)

How to run FE regressions for time-invariant subgroups (in Stata)

嗨 运行 几个结果的几个固定效应回归,我将其存储在 local 中并在 foreach 循环中进行。接下来,我想通过稳定的、不随时间变化的特征(例如性别或种族)添加子组分析。因此我不能使用 bysort group: regress

以下是一个 MWE,我如何才能对 race 的所有 3 个级别重做此分析?目前,我进行复制粘贴,保存数据并一次保持一个级别。我希望有更有效的方法。

* load data
use http://www.stata-press.com/data/r13/nlswork

* set panel structure
xtset idcode year

* fixed effects regression 
local outcomes "ln_wage ttl_exp tenure" 
local rhsvars "c.wks_ue##c.wks_ue##i.occ_code union age i.year 1.race"

foreach o of local outcomes { 
        quietly xtreg `o' `rhsvars', i(idcode) fe 
                margins, dydx(wks_ue) at(occ_code=(1 2 3)) post
                outreg2 using report_`r'.doc, word append ctitle(`o')
} 
* subgroup analysis race (or gender) ??

正如上面提到的 Pearly Spencer,if 似乎是完美的解决方案。 (我假设您的本地宏 r 用于迭代种族值。)

use http://www.stata-press.com/data/r13/nlswork
xtset idcode year
local outcomes "ln_wage ttl_exp tenure" 
local rhsvars "c.wks_ue##c.wks_ue##i.occ_code union age i.year"
levelsof race
local racelevels `r(levels)'

foreach r in `racelevels'{
    foreach o of local outcomes { 
            quietly xtreg `o' `rhsvars' if race == `r', i(idcode) fe 
                    margins, dydx(wks_ue) at(occ_code=(1 2 3)) post
                    outreg2 using report_`r'.doc, word append ctitle(`o')
    }
}

顺便说一句,将 Sergio Correia 的 user-written 命令 reghdfe 视为 xtreg 的更快、更直观的替代品:http://scorreia.com/software/reghdfe/

(代码已编辑)