我在1990年至2010年期间在美国运行人口普查区域的空间面板模型(使用splm),基于距离或邻接度的邻居矩阵。但我也希望将人口普查区内的标准错误聚集在一起。
在面板模型(plm)中,有一种方法可以做到这一点(使用postestimation函数“vcovHC”然后“coeftest”(参见http://redux.js.org/docs/FAQ.html#react-multiple-components))但我没有看到,也找不到使用splm对象执行此操作的方法。当我运行相同的代码时,我收到错误"Error in terms.default(object) : no terms component nor attribute."
关于与其他模型进行聚类有很多问题,但没有关于splm包的问题,所以非常感谢任何帮助。
这可以在Stata中使用XSLME软件包完成,并且在调用结束时包括:vce(cluster“group_var”),但是在3个面板上有37k +个案例,Stata崩溃了。
具有相同问题的假设示例如下:
library(splm)
library(spdep)
data("Insurance")
data(itaww)
sw <- mat2listw(itaww)
myformula <- rgdp ~ agen + school + fam
myresults <- spml(myformula,
data = Insurance,
listw = sw,
model = "within",
lag = FALSE,
effect = "individual",
spatial.error = "b")
summary(myresults)
results_vcov <- vcovHC(myresults, type = "HC0", cluster = "group")
## same thing but with plm
library(plm)
myplmresults <- plm(myformula,
data = Insurance,
model = "within")
summary(myplmresults)
results_vcov <- vcovHC(myplmresults, type = "HC0", cluster = "group")
library(lmtest)
coeftest(myplmresults, vcov = results_vcov)