我正在分析面板数据的FE,RE和Pools Ols模型(州= 26,T = 6,N = 156,平衡集)。我所有的变量都以百分比表示。
Y = employment rate of canton refugees
x1 = percentage share of jobs in small Businesses
x2 = percentage share of jobs in large Businesses
Controls = % share of foreigners, cantonal GDP as a percentage to the country GDP, unemployment rate of natives
我想按组(州=状态)调整聚类SE的回归模型,因为当存在序列相关性时标准误会被低估,从而使假设检验变得模棱两可。
由于每个州和年份只有一个观测值,因此无法按年份和州进行聚类。由于各州的联邦制性质,基于州的自治性,假定这些聚类彼此独立,因此结果已按州进行聚类。由于经济理论/机制中滞后效应的性质,假设年份群集彼此依赖。
1)我是否需要证明存在序列相关性,还是可以假设存在序列相关性,因为随着时间的推移,同一州的观测结果很可能是相关的。 如果有必要在对SE进行集群之前测试串行相关性,我应该使用哪些代码?
这是我的代码:
FE型号: fixedm6 <-plm(Y〜X + X1 +控件,data = busdata,index = c(“ canton”,“ year”),model =“ within”,effect ='twoways')
FE模型集中了SE:
cfixedm6 <- coeftest(fixedm6, vcov=vcovHC(fixedm6, method = "arellano", type="HC3",cluster="group"))
池化的OLS模型:
m6pool <- plm(Y ~ X + X1 + X2, data=busdata, index=c("canton", "year"), model="pooling")
OLS MIT集群群集SE:
cm6pool <- coeftest(m6pool, vcov=vcovHC(m6pool, type="HC3", cluster="group"))
没有聚类SE的F检验:
pFtest(fixedm6, m6pool)
p-value < 2.2e-16 ----> FE is better fit
当我插入带有聚类SE的模型时:
pFtest(cfixedm6, cm6pool)
Error in UseMethod("pFtest") : no applicable method for 'pFtest' applied to an object of class "coeftest"
其他lmtest函数(用于Hausmann测试的phtest)也会发生同样的情况。 RE模型:
randm6 <- plm(eY ~ X + X1 + X2, index=c("canton", "year"), data=busdata, model="random")
RE MOdel mit群集SE:
crandm6 <- coeftest(randm6, vcov=vcovHC(randm6, method = "white1", type="HC3", cluster="group"))
没有群集的SE:
phtest(fixedm6, randmo6)
具有聚集的SE:
phtest(cfixedm6, crandmo6)
UseMethod(“ phtest”)中的错误:没有适用于“ phtest”的适用于“ coeftest”类对象的方法
2)我是否必须先比较没有聚类SE的模型,然后再基于Ftest / hausmann测试等对模型进行比较,找到最佳模型,然后对模型SE聚类?
在模型中没有聚类SE的情况下,我可以轻松地使用lmtests比较模型的重要性。但是,考虑到p值会失真,这似乎是错误的。但是,一旦包含集群式SE,我就不知道如何编码以比较和确定哪种模型最合适。
我该如何在R中解决这个问题?大多数在线资源都讨论了FE / RE等,然后讨论了集群SE,但从未讨论过如何比较具有集群SE的模型。我究竟做错了什么?哪种R代码在这里最好?我使用了错误的软件包吗?
最好的问候, 吉尔