如何在 r 中提取稳健的标准误差?

How to extract robust standard errors in r?

我在 运行 使用 lm() 函数进行回归后计算了稳健的标准误差。

# robust standard errors
cov2I         <- vcovHC(ols2I, type = "HC1")
robust_se2I    <- sqrt(diag(cov2I))
print(robust_se2I)

我想从结果矩阵中提取第二个值并将其保存在一个新变量下。我尝试了以下代码,但它没有用。

stderrorols2I <- (summary(robust_se2I))[2]

感谢您的帮助!

这是将 RSE 手动添加到摘要输出的方法。或者,您可以查看 coeftest()

library(sandwich)  
mod1 <- lm(mpg ~ cyl + disp, data = mtcars) 

# robust standard errors
cov2I         <- vcovHC(mod1, type = "HC1")
robust_se2I    <- sqrt(diag(cov2I)) 

mod1 %>% 
  broom::tidy() %>% 
  mutate(rse = robust_se2I)

我找到了问题的答案。

为了保存特定的稳健标准错误,我应该编写以下代码:

stderrorols2I <- (robust_se2I)[2]

现在一切正常。 无论如何感谢您的快速反馈!