Par*_*gue 2 r usage-statistics panel-data
我想控制包含一百多个级别的因子变量,而不将该控制的结果输出到汇总表。请注意,我还对复制 Stata 命令的速度感兴趣,而不仅仅是对输出进行表面更改。
在 Stata 中我可以像这样使用“absorb”:
use http://www.stata-press.com/data/r14/abdata.dta, clear
. xtreg n w k i.year, fe
Fixed-effects (within) regression Number of obs = 1,031
Group variable: id Number of groups = 140
R-sq: Obs per group:
within = 0.6277 min = 7
between = 0.8473 avg = 7.4
overall = 0.8346 max = 9
F(10,881) = 148.56
corr(u_i, Xb) = 0.5666 Prob > F = 0.0000
------------------------------------------------------------------------------
n | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
w | -.2731482 .0551503 -4.95 0.000 -.3813896 -.1649068
k | .5648036 .0212211 26.62 0.000 .5231537 .6064535
|
year |
1977 | -.0347963 .0188134 -1.85 0.065 -.0717206 .0021281
1978 | -.0583286 .0190916 -3.06 0.002 -.0957989 -.0208583
1979 | -.070047 .0190414 -3.68 0.000 -.1074187 -.0326752
1980 | -.0889378 .0189788 -4.69 0.000 -.1261867 -.0516889
1981 | -.1401502 .0186309 -7.52 0.000 -.1767163 -.1035841
1982 | -.1603768 .0188132 -8.52 0.000 -.1973008 -.1234528
1983 | -.1621103 .0222902 -7.27 0.000 -.2058585 -.1183621
1984 | -.1258136 .0282391 -4.46 0.000 -.1812373 -.0703899
|
_cons | 2.255419 .1772614 12.72 0.000 1.907515 2.603323
-------------+----------------------------------------------------------------
sigma_u | .64723143
sigma_e | .12836859
rho | .96215208 (fraction of variance due to u_i)
------------------------------------------------------------------------------
F test that all u_i=0: F(139, 881) = 126.32 Prob > F = 0.0000
Run Code Online (Sandbox Code Playgroud)
使用吸收消除固定效应
. reghdfe n w k, absorb(id year)
(converged in 7 iterations)
HDFE Linear regression Number of obs = 1,031
Absorbing 2 HDFE groups F( 2, 881) = 362.67
Prob > F = 0.0000
R-squared = 0.9922
Adj R-squared = 0.9908
Within R-sq. = 0.4516
Root MSE = 0.1284
------------------------------------------------------------------------------
n | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
w | -.2731482 .0551503 -4.95 0.000 -.3813896 -.1649068
k | .5648036 .0212211 26.62 0.000 .5231537 .6064535
-------------+----------------------------------------------------------------
Absorbed | F(147, 881) = 120.660 0.000 (Joint test)
------------------------------------------------------------------------------
Absorbed degrees of freedom:
---------------------------------------------------------------+
Absorbed FE | Num. Coefs. = Categories - Redundant |
-------------+-------------------------------------------------|
id | 140 140 0 |
year | 8 9 1 |
---------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
我能找到的最好的替代方案是 lfe 包,它实现具有高维固定效应或/和工具变量的模型。
您可以在竖线之后指定固定效果,如下所示:
felm(n ~ w _ k | year, df)
Run Code Online (Sandbox Code Playgroud)
年份系数将被吸收到最终规范中。此方法的问题在于它现在允许您预测观察结果。
编辑:更新
R 库estimatr有函数lm_robust,它有一个固定效果参数,可以吸收 FE,并且比我在网上找到的任何库都工作得更好。强烈推荐。
| 归档时间: |
|
| 查看次数: |
3304 次 |
| 最近记录: |