我正在使用spdep库中的errorsarlm()函数拟合空间错误模型。使用bptest.sarlm()函数计算的空间模型的 Breusch-Pagan 检验表明存在异方差。
下一步自然是获得稳健的标准误差估计并更新 p 值。在bptest.sarlm()函数的文档中说:
“通过使用 sarlm 对象的“lm.target”组件——使用 lmtest 和三明治包中的函数,在技术上也可以对标准误差估计进行异方差校正。”
并提供以下代码(作为参考):
lm.target <- lm(error.col$tary ~ error.col$tarX - 1)
if (require(lmtest) && require(sandwich)) {
print(coeftest(lm.target, vcov=vcovHC(lm.target, type="HC0"), df=Inf))}
其中error.col是估计的空间误差模型。
现在,我可以轻松地使代码适应我的问题并获得稳健的标准错误。不过,我想知道:
- sarlm 对象的“lm.target”组件到底是什么?我在 spdep 文档中找不到任何提及。
- $tary 和 $tarX 到底是什么?同样,文档中似乎没有提到它。
- 为什么文档说“在技术上可以进行异方差校正”?这是否意味着并不真正推荐所提出的方法来克服异方差问题?