查看原文
其他

Stata:空间自回归模型

数量经济学 数量经济学 2022-12-31

空间自回归模型

相邻的城镇之间的相互影响比遥远的城镇之间的影响更大。国与国之间的距离越近,朋友之间在社交媒体上的联系越紧密。

空间自回归模型使用包含地理区域观测数据集进行拟合。观察值称为空间单位,可以是国家、州、县、邮政编码或城市街区。或者,它们可能根本不基于地理位置;他们可能是社交网络的节点。

数据集包含一个连续的结果变量——如疾病发生率、农场产量或犯罪率——以及其他用于预测结果的变量。对于横截面数据,每个变量每个空间单位有一个值。对于面板数据,不同的时间点通常有多个值。

有一本手册完全致力于拟合SAR模型,处理空间数据,创建和管理空间加权矩阵。这些命令称为Sp命令。参见空间自回归模型参考手册。

让我们看看它是怎么工作的

拟合SAR模型有三个步骤:

  • 准备好数据进行分析。

  • 创建模型所需的空间权重矩阵。

  • 运行你的SAR模型。

Stata的Sp命令可以使用shapefile,也可以不使用shapefile, shapefile通常用于定义地图。他们可以处理其他位置数据,甚至可以处理完全没有位置的数据,比如社交网络数据。

以下是从头到尾的分析。

步骤1:查找并转换shapefile

你不必使用shapefiles,但我们会使用。我们下载了一个标准格式的shapefile, tl_2016_us_county.zip,我们在https://catalog.data.gov/dataset/tiger-line-shapefile-2016-nation-u-s-current-county-and-equivalent-national-shapefile上找到的。

我们将文件复制到当前目录,然后输入Stata:

. unzipfile tl_2016_us_county.zip
  (output omitted)

. spshape2dta tl_2016_us_county
  (importing .shp file)
  (importing .dbf file)
  (creating _ID spatial-unit id)
  (creating _CX coordinate)
  (creating _CY coordinate)

  file tl_2016_us_county_shp.dta created
  file tl_2016_us_county.dta     created

spshape2dta神奇地为我们创建了两个Stata数据集。一个是stata格式的shapefile:

tl_2016_us_county_shp.dta

另一个是Stata数据集,包含shapefile bundle中的其他数据:

tl_2016_us_county.dta

Spshape2dta还链接了这两个文件。

步骤2:准备数据进行分析

我们有自己对这些县的分析数据。我们可以只使用它们而跳过shapefile,但是我们的数据没有县的坐标。我们无法计算距离或找到邻居。我们无法进行SAR模型分析。这就是为什么我们从美国人口普查中得到了形状文件;它会提供所有这些信息。

我们将使用tl_2016_us_county.dta合并数据。我们将首先创建一个ID变量来合并文件。我们还告诉Sp,人口普查局提供了纬度和经度的坐标,我们希望报告的距离以英里为单位。

. use tl_2016_us_county

. generate long fips = real(STATEFP + COUNTYFP)

. spset fips, modify replace
(output omitted)

. spset, modify coordsys(latlong, miles)

      Sp dataset: tl_2016_us_county.dta
Linked shapefile: tl_2016_us_county_shp.dta
            Data: Cross sectional
 Spatial-unit ID: _ID (equal to fips)
     Coordinates: _CY, _CX (latitude-and-longitude, miles)

. save, replace
file tl_2016_us_county.dta saved

. use texas_ue, clear

. merge 1:1 fips using tl_2016_us_county, keep(match)
(output omitted)

我们的数据已准备好供分析。

步骤3:创建空间权重矩阵

我们计划拟合一个具有因变量空间滞后、协变量空间滞后和空间自回归误差的模型。空间滞后由空间加权矩阵定义。我们将用一个矩阵表示变量,另一个矩阵表示误差。

Sp提供了许多创建空间权重矩阵的方法。我们将使用它的两种预定义配方:

. spmatrix create contiguity W

. spmatrix create idistance M

. spmatrix dir

   Weighting matrix name           N x N      Type         Normalization
                       M       254 x 254    idistance        spectral
                       W       254 x 254    contiguity       spectral


我们将W创建为基于最近邻的邻接矩阵。

我们把M设为县与县之间距离的倒数。

我们让Sp执行其默认的归一化,即最大特征值)。我们可以选择行或最小--最大归一化。

Sp还提供了一些命令,让您可以创建自定义权重矩阵。您可以通过编写Mata代码或从文本文件导入Stata数据来创建它们。Mata功能特别有趣,因为它很容易使用。

第四步:拟合模型

我们已经准备好了数据。

我们已经定义了所需的空间权重矩阵。

现在我们可以适应我们的模型。

. spregress unemployment college, gs2sls dvarlag(W) ivarlag(W:college) errorlag(M)

Spatial autoregressive model                    Number of obs     =        254
GS2SLS estimates                                Wald chi2(3)      =      43.52
                                                Prob > chi2       =     0.0000
                                                Pseudo R2         =     0.2081
unemployment     Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
unemployment    
     college       -.067419   .0122785    -5.49   0.000    -.0914843   -.0433536
       _cons       5.715733   .4246597    13.46   0.000     4.883415     6.54805
W               
     college      -.0424388   .0213227    -1.99   0.047    -.0842306    -.000647
unemployment       .2058481   .0961201     2.14   0.032     .0174562      .39424
W               
e.unemploy~t       3.247298   1.369204     2.37   0.018     .5637078    5.930888
Wald test of spatial terms:          chi2(3) = 9.77       Prob > chi2 = 0.0206

我们使用广义空间两阶段最小二乘(GS2SLS)估计。GS2SLS估计使我们能够适应多个空间滞后,潜在地使我们能够更好地逼近真正的空间依赖性。或者,我们可以使用最大似然估计来拟合模型。

我们的因变量是失业率(失业率),我们认为失业率是受拥有大学学位(大学)的成年人口比例的影响。

步骤5:解释模型

如果您熟悉SAR模型,您就会知道它们很难解释,因为系数是直接和间接影响的组合。直接效应是空间单位对自身的影响。间接效应是指空间单元对其他空间单元的影响,也称为溢出效应。

Stata的estat impact命令将这些影响分开。


. estat impact

Average impacts                                 Number of obs     =        254

                            Delta-method     
                      dy/dx   std. err.      z    P>|z|     [95% conf. interval]
direct          
     college             -.0690788   .0121434    -5.69   0.000    -.0928795   -.0452781
indirect        
     college             -.0586373   .0299383    -1.96   0.050    -.1173152    .0000407
total           
     college             -.1277161   .0320147    -3.99   0.000    -.1904638   -.0649684

estat impact对于解释SAR模型的结果和所有Sp估计值都是必要的。我们看到,一个县的大学学历人口每增加1个百分点,该县的失业率就会降低0.07个百分点,这是直接影响。对邻近县的溢出效应也差不多——预计失业率将下降0.06个百分点。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存