如何估计R中的空间自回归模型?

时间:2014-04-10 14:45:00

标签: r spatial

我正在尝试使用Franzese & Hays (2007)中使用横截面时间序列数据的空间计量经济模型论文中的数据来估计R中的一些空间模型。 我将重点放在表4中给出的结果(见下文)。 使用lm我能够复制他们的OLS,S-OLS和S-2SLS模型的结果。 然而,在试图估计S-ML(空间最大似然)模型时,我遇到了麻烦。

Table 4 from Franzese & Hays (2007)

如果我使用GLM模型,某些解释变量存在一些细微差别,但对于空间滞后的估计系数(下面显示的输出)有相当大的余量。 我不完全确定为什么GLM在这种情况下不是正确的估算方法。 使用GLS我得到的结果与GLM类似(可能是related)。

require(MASS)
    m4<-glm(lnlmtue~lnlmtue_1+SpatLag+DENSITY+DEIND+lngdp_pc+UR+TRADE+FDI+LLVOTE+LEFTC+TCDEMC+GOVCON+OLDAGE+factor(cc)+factor(year),family=gaussian,data=fh)
summary(m4)

Coefficients:
                    Estimate   Std. Error t value    Pr(>|t|)    
(Intercept)          7.199091355  3.924227850   1.835    0.068684 .  
lnlmtue_1            0.435487985  0.080844033   5.387 0.000000293 ***
SpatLag             -0.437680018  0.101078950  -4.330 0.000028105 ***
DENSITY              0.007633016  0.010268468   0.743    0.458510    
DEIND                0.040270153  0.032304496   1.247    0.214618 

我尝试使用splm包,但这会导致更大的一致性(输出如下所示)。 而且,我无法在模型中包含固定效果。

require(splm)
m4a<-spml(lnlmtue~lnlmtue_1+DENSITY+DEIND+lngdp_pc+UR+TRADE+FDI+LLVOTE+LEFTC+       TCDEMC+GOVCON+OLDAGE,data=fh,index=c("cc","year"),listw=mat2listw(wmat),
      model="pooling",spatial.error="none",lag=T)
summary(m4a)


Coefficients:
           Estimate  Std. Error t-value Pr(>|t|)    
(Intercept)  1.79439070  0.78042284  2.2993  0.02149 *  
lnlmtue_1    0.75795987  0.04828145 15.6988  < 2e-16 ***
DENSITY     -0.00026038  0.00203002 -0.1283  0.89794    
DEIND       -0.00489516  0.01414457 -0.3461  0.72928 

所以基本上我的问题是如何在R中使用横截面时间序列数据正确估算SAR模型?

R-code

Replication data

Adjacency matrix

1 个答案:

答案 0 :(得分:0)

使用R是否至关重要?

我建议您检查一下Geoda的功能,这是一个免费的亚利桑那州立大学空间分析软件包。

虽然我只用它来运行基本的空间OLS(而不是2SLS),但我对Geoda的灵活性和可视化工具很满意。我鼓励您浏览documentation并考虑下载最新版本。

如果您必须使用R,我建议您浏览GeoXp包(http://cran.r-project.org/web/packages/GeoXp/index.html)。