我已经阅读了很多关于将简单的稳健选项从 STATA 复制到 R 以使用稳健标准错误的痛苦。我复制了以下方法:StackExchange和经济理论博客。它们可以工作,但我面临的问题是,如果我想使用该stargazer
函数打印我的结果(这会打印.tex
Latex 文件的代码)。
这是我的问题的说明:
reg1 <-lm(rev~id + source + listed + country , data=data2_rev)
stargazer(reg1)
这会将 R 输出打印为 .tex 代码(非鲁棒 SE)如果我想使用鲁棒 SE,我可以使用三明治包如下所示:
vcov <- vcovHC(reg1, "HC1")
如果我现在使用 stargazer(vcov),则只打印 vcovHC 函数的输出,而不是回归输出本身。
使用该软件包lmtest()
,至少可以打印估计量,但不能打印观察值 R2,adj。R2、残差、残差 St.Error 和 F 统计量。
lmtest::coeftest(reg1, vcov. = sandwich::vcovHC(reg1, type = 'HC1'))
这给出了以下输出:
t test of coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -2.54923 6.85521 -0.3719 0.710611
id 0.39634 0.12376 3.2026 0.001722 **
source 1.48164 4.20183 0.3526 0.724960
country -4.00398 4.00256 -1.0004 0.319041
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
如何添加或获取具有以下参数的输出?
Residual standard error: 17.43 on 127 degrees of freedom
Multiple R-squared: 0.09676, Adjusted R-squared: 0.07543
F-statistic: 4.535 on 3 and 127 DF, p-value: 0.00469
有没有人遇到同样的问题,可以帮助我吗?如何在函数中使用稳健的标准误差lm
并应用该stargazer
函数?