使用NeweyWest时如何更新摘要?

Mat*_*ert 16 r summary lm

我使用NeweyWest标准错误来纠正我的lm() / dynlm()输出.例如:

fit1<-dynlm(depvar~covariate1+covariate2)
coeftest(fit1,vcov=NeweyWest)
Run Code Online (Sandbox Code Playgroud)

系数以我想要的方式显示,但不幸的是,我放弃了所有回归输出信息,如R平方,F-Test等,通过摘要显示.所以我想知道如何在相同的摘要输出中显示强大的se和所有其他内容.

有没有办法在一次通话中获取所有内容或覆盖"旧"估算值?我敢打赌,我只是错过了一些错误的东西,但是在扫描输出时这确实很重要.

测试例,取自?dynlm.

require(dynlm)
require(sandwich)
data("UKDriverDeaths", package = "datasets")
uk <- log10(UKDriverDeaths)
dfm <- dynlm(uk ~ L(uk, 1) + L(uk, 12))

#shows R-squared, etc.
summary(dfm)

#no such information
coeftest(dfm, vcov = NeweyWest)
Run Code Online (Sandbox Code Playgroud)

顺便说一句:同样适用 vcovHC

Ric*_*ron 16

coefficients只是在一个矩阵lm(或dynlm)摘要对象,因此,所有你需要做的是unclasscoeftest()输出.

library(dynlm)
library(sandwich)
library(lmtest)
temp.lm <- dynlm(runif(100) ~ rnorm(100))
temp.summ <- summary(temp.lm)
temp.summ$coefficients <- unclass(coeftest(temp.lm, vcov. = NeweyWest))
Run Code Online (Sandbox Code Playgroud)