【发布时间】:2017-10-17 01:42:46
【问题描述】:
有谁知道如何让stargazer 显示lm 模型的集群SE? (以及相应的 F 检验?)如果可能,我想遵循类似于使用 sandwich 计算异方差稳健性 SE 并将它们弹出到 stargazer 中的方法,如 http://jakeruss.com/cheatsheets/stargazer.html#robust-standard-errors-replicating-statas-robust-option。
我正在使用lm 来获取我的回归模型,并且我正在按公司进行聚类(回归模型中未包含的因子变量)。我也有一堆 NA 值,这让我认为multiwayvcov 将是最好的包(请参阅landroni 答案的底部 - Double clustered standard errors for panel data - 还有https://sites.google.com/site/npgraham1/research/code)?请注意,我不想使用plm。
编辑:我想我找到了使用 multiwayvcov 包的解决方案...
library(lmtest) # load packages
library(multiwayvcov)
data(petersen) # load data
petersen$z <- petersen$y + 0.35 # create new variable
ols1 <- lm(y ~ x, data = petersen) # create models
ols2 <- lm(y ~ x + z, data = petersen)
cl.cov1 <- cluster.vcov(ols1, data$firmid) # cluster-robust SEs for ols1
cl.robust.se.1 <- sqrt(diag(cl.cov1))
cl.wald1 <- waldtest(ols1, vcov = cl.cov1)
cl.cov2 <- cluster.vcov(ols2, data$ticker) # cluster-robust SEs for ols2
cl.robust.se.2 <- sqrt(diag(cl.cov2))
cl.wald2 <- waldtest(ols2, vcov = cl.cov2)
stargazer(ols1, ols2, se=list(cl.robust.se.1, cl.robust.se.2), type = "text") # create table in stargazer
这种方法的唯一缺点是您必须从每个模型的waldtest() 输出手动重新输入 F 统计数据。
【问题讨论】:
标签: r lm stargazer standard-error