私は、1990 年から 2010 年の間に米国の国勢調査区の空間パネル モデル (splm を使用) を、距離または隣接性に基づく隣接行列で実行しています。しかし、国勢調査区が含まれる都市の標準誤差もクラスター化したいと考えています。
パネル モデル (plm) 内でこれを行う方法があります (事後推定関数「vcovHC」と「coeftest」(こちらを参照) を使用)。 splm オブジェクト。同じコードを実行すると、エラー"Error in terms.default(object) : no terms component nor attribute."
が表示されます。他のモデルでのクラスタリングについては多くの質問がありますが、splm パッケージでは質問がないので、助けていただければ幸いです。
これは、XSLME パッケージを使用して Stata で実行でき、呼び出しの最後に 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)