R中的Waldtest用plm调整F统计量,并用stargazer显示结果?

时间:2016-10-05 01:56:12

标签: r stargazer plm

我正在使用不平衡的短板。 原始数据:bankFull.xlsx

我真正想要的只是得到两个侧面固定效果和强大的S.E报告的回归结果,这在Stata中非常容易。我跟着在线教程,但总是遇到一些问题

# Adjust F statistic 
wald_results <- waldtest(FE1, vcov = cov1)
Error in model.matrix.pFormula(formula, data, rhs = 1, model = model,  : 
  NA in the individual index variable

无论我如何调整数据!这几乎让我发疯。

这是我的代码:

bankFull <- openxlsx::read.xlsx("bankFull.xlsx",1)

attach(bankFull)
library(plm)

FE1 = plm(  RoA ~
              log(1+degreeNW)+
              ln_assets+
              log(no_of_board_members/staffNo)+
              log(no_of_branch_covered_city)+ 
              log(operation_year)+
              `RoA-1`+
              log(staffNo),
            data = bankFull, index = c("name","year"),  
            effect="twoways",na.action = na.omit,
            model= "within")

# robust S.E.-----------
library(sandwich)
library(lmtest)   # waldtest; see also coeftest.
library(stargazer)

# Adjust standard errors
cov1         <- vcovHC(FE1, type = "HC1")
robust_se    <- sqrt(diag(cov1)) 

# Adjust F statistic 
wald_results <- waldtest(FE1, vcov = cov1)

# show results. how can I get the F value?
stargazer(FE1, FE1, type = "text",
          se        = list(NULL, robust_se),
          omit.stat = "f")

其次,如图所示,我使用stargazer来演示结果。我还需要将调整后的F值显示在表格中。我可以使用包装中的任何选项吗?

1 个答案:

答案 0 :(得分:1)

编辑:根据plm的CRAN版本1.6-4

更新信息

使用plm的CRAN版本1.6-4通过函数pwaldtest为您的模型支持强大的F测试(此函数在开发版本中称为Ftest,但在CRAN版本之前重命名)。

示例:

data("Grunfeld", package = "plm")
mod_fe <- plm(inv ~ value + capital, data = Grunfeld, model = "within")
plm::pwaldtest(mod_fe, test = "F")


# with robust vcov
plm::pwaldtest(mod_fe, test = "F", vcov = vcovHC(mod_fe))
plm::pwaldtest(mod_fe, test = "F", vcov = function(x) vcovHC(x, type = "HC3"))
summary(mod_fe, vcov = vcovHC)

提供健壮的值(强健的标准错误,t值和p值,F值相关的p值)使用参数 setp和F {只测试add.lines命令的stargazer(默认情况下省略由stargazer生成的F统计信息)。以下是您想要的完整示例:http://jakeruss.com/cheatsheets/stargazer.html(“强大的标准错误(复制Stata的强大选项)”一节)。