查看原文
其他

acreg:允许干扰项随意相关的稳健性标准误

连享会 连享会 2023-10-24

👇 连享会 · 推文导航 | www.lianxh.cn

作者: 袁煜玲 (厦门大学)
邮箱: 384860359@qq.com

温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」。或直接长按/扫描如下二维码,直达原文:


目录

  • 1. 回归系数的标准误

    • 1.1 标准误的估计

    • 1.2 稳健标准误的重要性

    • 1.3 稳健标准误的 Stata 实现

  • 2. 空间与网络的相关性

    • 2.1 背景介绍

    • 2.2 acreg 介绍

  • 3. acreg 命令的应用

    • 3.1 收入与自杀率

    • 3.2 网络模型

    • 3.3 空间相关性

  • 4. 参考文献

  • 5. 相关推文



acreg 适用于 OLS 和 2SLS 两种线性回归模型。其主要优势是允许模型的残差项存在任意形式的聚类相关性。为对该命令有详细的了解,本文将从标准误估计不准确的后果、相关文献、以及实际应用等方面进行介绍。

1. 回归系数的标准误

1.1 标准误的估计

在默认情况下,我们会假设随机扰动项 的方差 为常数,即同方差假定。然而,这一假设在大多数时候都不成立。

图 1:异方差的例子

不过,即使 不满足同方差假定,OLS 估计量依然无偏、一致且渐近正态,因为在推导这些性质时并不需要同方差假定。但是,由于 ,此时 检验和 检验失效。换句话说,扰动项的异方差性,不会影响回归估计系数的一致性,只会影响系数标准误的大小和检验统计量的效度。

例如, 的 95% 的置信区间估计为 。考虑异方差后,估计的 增大,则 的置信区间有可能包含 0,从而使得统计结果不显著;反之,如果未考虑异方差,即使 显著,结论也不一定可靠。

如果在回归时没有考虑到组内扰动项相关性,那么就可能会得到偏小的标准误 (Cameron 和 Miller,2015),进而导致不准确的置信区间、 统计量和 值。因此,在进行统计推断时,系数标准误 的准确估计也很重要。

1.2 稳健标准误的重要性

Bertrand 等 (2004) 指出,当时的许多 DID 研究,未能考虑聚类稳健的标准误,或者经常在错误的水平上聚类。针对上述现象,Cameron 和 Miller (2015) 举了如下例子:

这是一个州—年面板数据的 DID 模型。因变量是工资水平,自变量 是外生政策变量,该变量随着州和时间而变化。当 =1 时,表示政策生效,反之则未生效。然而,变量 通常是序列相关的。例如,在那些从未实施政策的州,在永久实施该政策以后, 将从一系列的 0,变成一系列的 1。此时,如果模型系统性地高估 (或低估) 了工资水平,那么误差项 在同一个州内部在时间维度上是正相关的。那么,默认的标准误就可能产生向下偏误。

直观地理解,在模型估计时,如果系统性地高估了一个州的工资预测,即同一个州每年的工资预测都被高估,那么 就都是负的,从而州内部的误差项正相关;反之,若是系统性低估,模型中这个州每年的误差项就都是正的,从而误差项也是正相关。

Cameron 和 Miller (2015) 指出,在 DID 面板数据回归模型中,聚类稳健的标准误可能比默认标准误大许多。主要原因是,自变量和误差项在类别 (州) 内部都是高度相关,而且即使考虑了固定效应,以上问题仍可能存在。当然,该问题不仅存在于 DID 模型中,也存在于所有面板数据模型中 (Cameron 和 Miller,2015)。

1.3 稳健标准误的 Stata 实现

在进行 OLS 或 2SLS 回归时:

  • 如果在回归命令后面加上 robust 选项,表明使用著名的 White (1980) 异方差稳健标准误;
  • 如果在回归命令后面加上 cluster() 选项,表明使用聚类稳健标准误。如果在聚类时,根据观测个体聚类,即 cluster(id),则等同于在回归命令后面加上 robust

2. 空间与网络的相关性

2.1 背景介绍

现如今,空间数据或网络数据的分析非常常见。然而,数据中难以观测的异质性可能在相邻单元之间存在关联,给统计推断带来挑战。针对上述问题,Conley (1999b) 和 Hsiang (2010) 认为可以使用坐标来缓解空间相关问题。在此基础上,Colella 等 (2019) 基于 White (1980),提出了一种 “任意聚类方法”。该方法能够允许 OLS 和 2SLS 回归中的方差—协方差矩阵存在任意形式的相关性,包括空间结构、网络结构、以及时间维度等。并且,Colella 等 (2020) 编写了 acreg 命令来实现上述过程。

在基于美国大都市的地理空间分布所设定的蒙特卡罗模拟中,Colella 等 (2019) 发现 acreg 能够渐进准确地拒绝原假设,而传统的统计推断方法 (基于行政单元的聚类或非聚类的方法) 则倾向于过度拒绝原假设。

2.2 acreg 介绍

*命令安装
ssc install acreg, replace
*基本语法
acreg depvar [varlist1] [(varlist2 = varlist_iv) [if] [in]] [fweight pweight]

其中,depvar 为因变量,[varlist1] 是一系列外生变量,varlist2 是一系列内生变量,varlist_ivvarlist2 的工具变量。

*时间维度语法
acreg depvar varlist1 (varlist2 = varlist iv), id(idvar) time(timevar) lag(#)

其中,idvar 是横截面维度上的唯一标识符,timevar 是时间维度上的唯一标识符,lag(#) 指定同一个个体的时间滞后截断。

*空间语法1
acreg depvar varlist1 (varlist2 = varlist iv), spatial
latitude(latitudevar) longitude(longitudevar) dist(#)

其中,spatial 指定空间环境;latitudevar 是包含纬度的变量,精确到小数点后一位,且取值在 [-180.0, 180.0] 之间;类似地,longitudevar 是包含经度的变量;dist(#) 指定两个样本点在多少距离以外就没有相关性,以千米为单位。

*空间语法2
acreg depvar varlist1 (varlist2 = varlist iv), spatial
dist mat(varlist_distances) dist(#)

其中,varlist_distances 是在样本点之间包含双边空间距离的 N 个变量,这种距离以有意义的单位度量;dist(#) 指定两个样本点在多少距离以外就没有相关性,所用单位与 varlist_distances 的距离单位相同。

*网络语法
acreg depvar varlist1 (varlist2 = varlist_iv), network
inks mat(varlist_links) dist(#)

其中,network 指定网络环境;varlist_links 是指定两个样本点之间联系的 N 个双边变量,例如邻接矩阵中两个节点之间最短距离的边的数量,这种联系可随时间变化;dist(#) 指定一个距离,超出这个距离的两个点被假定误差不相关,如果设定的值大于 1,acreg 会计算两个网络节点之间的双边距离。

*多维聚类语法
acreg depvar varlist1 (varlist2 = varlist_iv), cluster(varlist_cluster)

其中,varlist_cluster 是一系列不同的聚类类别变量,每个变量指定一个聚类维度。

*任意聚类语法
acreg depvar varlist1 (varlist2 = varlist_iv), weights(varlist_weights)

其中,varlist_weights 是 N (截面) 或者 (面板) 个包含 S 矩阵权重的变量。

此外,上述语法具有的共同选项如下:

  • 相关关系结构hac 报告了异方差序列相关 (HAC) 稳健标准误;bartlett 在用于计算方差—协方差矩阵的权重矩阵中,在样本点之间,在截断距离之内对权重矩阵施加了距离的线性递减;nbclust(#) 是用于计算 Kleibergen-Paap 统计量的聚类类别数量,用于任意聚类相关,默认值为 100。
  • 高维固定效应fe1var 指定第一个需要控制高维固定效应的变量 ;fe2var 指定第二个需要控制高维固定效应的变量;dropsingletonspfe1 (and pfe2) 被指定的前提下,删除单独的组。
  • 储存选项storeweights 选项仅在 spatialnetworkvarlist_cluster 三个选项被指定的情况下才能使用。storeweights 选项会将用于调整方差—协方差矩阵的允许任意聚类相关的权重矩阵储存在名为 weightsmat 的变量中。weightsmat 所储存的矩阵可以用于前文介绍的 varlist_weights 选项的输入。

3. acreg 命令的应用

3.1 收入与自杀率

在估计以下方程时,需要估计空间相关的标准误:

其中, 是美国东南部的某个县,每个县有 4 年观测。 包括人口对数和平均年龄等控制变量。假设采用失业率作为收入的工具变量,则第一阶段模型如下:

需要说明的是,Colella 等 (2020) 在这个例子中仅为演示 acreg 的用法,因此并不会探究这个工具变量的合理性。

3.1.1 截面数据

. *采用 1990 年的横截面数据
. use "http://www.stata-press.com/data/r15/homicide1990.dta", clear
(S.Messner et al.(2000), U.S southern county homicide rates in 1990)

. *假设样本的误差之间没有相关性
. acreg hrate ln_population age (ln_income=unemployment)
HETEROSKEDASTICITY ROBUST STANDARD ERRORS
No HAC Correction
No Absorbed FEs
Included instruments: ln_population age
Instrumented: ln_income
Excluded instruments: unemployment
Kleibergen-Paap rk Wald F statistic: 990.487
Number of obs = 1412
Total (centered) SS = 69908.59003 Centered R2 = 0.1079
Total (uncentered) SS = 198667.4579 Uncentered R2 = 0.6861
Residual SS = 62363.84851

-------------------------------------------------------------------------------
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | -8.822 1.355 -6.51 0.000 -11.478 -6.167
ln_population | 1.404 0.277 5.07 0.000 0.862 1.947
age | -0.282 0.051 -5.55 0.000 -0.381 -0.182
_cons | 94.460 12.429 7.60 0.000 70.101 118.820
-------------------------------------------------------------------------------

. *等价于 ivreg2 的结果
. ivreg2 hrate ln_population age (ln_income=unemployment), robust

Number of obs = 1412
F( 3, 1408) = 24.04
Prob > F = 0.0000
Total (centered) SS = 69908.59003 Centered R2 = 0.1079
Total (uncentered) SS = 198667.4579 Uncentered R2 = 0.6861
Residual SS = 62363.84851 Root MSE = 6.646

-------------------------------------------------------------------------------
| Robust
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | -8.822 1.355 -6.51 0.000 -11.478 -6.167
ln_population | 1.404 0.277 5.07 0.000 0.862 1.947
age | -0.282 0.051 -5.55 0.000 -0.381 -0.182
_cons | 94.460 12.429 7.60 0.000 70.101 118.820
-------------------------------------------------------------------------------
. *估计州层面的聚类稳健标准误
. acreg hrate ln_population age (ln_income=unemployment), cluster(sfips)
MULTIWAY CLUSTERING CORRECTION
Cluster variable(s): sfips
No HAC Correction
No Absorbed FEs
Included instruments: ln_population age
Instrumented: ln_income
Excluded instruments: unemployment
Kleibergen-Paap rk Wald F statistic: 143.959
Number of obs = 1412
Total (centered) SS = 69908.59003 Centered R2 = 0.1079
Total (uncentered) SS = 198667.4579 Uncentered R2 = 0.6861
Residual SS = 62363.84851

-------------------------------------------------------------------------------
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | -8.822 1.802 -4.90 0.000 -12.353 -5.291
ln_population | 1.404 0.309 4.54 0.000 0.799 2.010
age | -0.282 0.130 -2.16 0.031 -0.537 -0.026
_cons | 94.460 17.890 5.28 0.000 59.396 129.525
-------------------------------------------------------------------------------

现在,使用 Conley (1999) 提出的空间相关估计,阈值选择为 100 公里,因此每个县的误差项假设与所有位于 100 公里范围内的其他县具有相关性 (本例中,平均而言有 89 个县相互关联)。

. acreg hrate ln_population age (ln_income=unemployment), ///
spatial latitude(_CX) longitude(_CY) dist(100)
SPATIAL CORRECTION
DistCutoff: 100
LagCutoff: 0
No HAC Correction
No Absorbed FEs
Included instruments: ln_population age
Instrumented: ln_income
Excluded instruments: unemployment
Kleibergen-Paap rk Wald F statistic: 112.917
Number of obs = 1412
Total (centered) SS = 69908.59003 Centered R2 = 0.1079
Total (uncentered) SS = 198667.4579 Uncentered R2 = 0.6861
Residual SS = 62363.84851

-------------------------------------------------------------------------------
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | -8.822 2.358 -3.74 0.000 -13.443 -4.201
ln_population | 1.404 0.469 3.00 0.003 0.485 2.323
age | -0.282 0.109 -2.58 0.010 -0.495 -0.068
_cons | 94.460 21.863 4.32 0.000 51.609 137.312
-------------------------------------------------------------------------------

在以上例子中,用于计算方差-协方差矩阵 (VCV) 的权重矩阵是二元的,即对于 100 公里范围内的两个县市 (县市对),取值为 1;相距超过 100 公里的两个县市 (县市对),取值为 0。acreg 还允许这个二元矩阵的权重随着两个县之间距离的增加而线性递减,也就是不再简单地用 0 或 1 来构造这个矩阵,此时可用 bartlett 选项。这里我们可通过 dist(200) 将相关距离的阈值从 100 公里改为 200 公里。

. acreg hrate ln_population age (ln_income=unemployment), ///
spatial latitude(_CX) longitude(_CY) dist(200) bartlett
SPATIAL CORRECTION
DistCutoff: 200
LagCutoff: 0
No HAC Correction
No Absorbed FEs
Included instruments: ln_population age
Instrumented: ln_income
Excluded instruments: unemployment
Kleibergen-Paap rk Wald F statistic: 132.260
Number of obs = 1412
Total (centered) SS = 69908.59003 Centered R2 = 0.1079
Total (uncentered) SS = 198667.4579 Uncentered R2 = 0.6861
Residual SS = 62363.84851

-------------------------------------------------------------------------------
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | -8.822 2.313 -3.81 0.000 -13.356 -4.289
ln_population | 1.404 0.439 3.20 0.001 0.544 2.265
age | -0.282 0.102 -2.77 0.006 -0.481 -0.083
_cons | 94.460 21.235 4.45 0.000 52.841 136.080
-------------------------------------------------------------------------------

acreg 允许控制高维固定效应,但为提高效率,将这些固定效应 “partial out”,降低由于控制很多虚拟变量对模型估计速度的影响。该命令最多仅允许控制两个固定效应变量,在 pfe1()pfe2() 两个选项的括号中,可填入要控制固定效应的变量。对上例回归控制州的固定效应:

. acreg hrate ln_population age (ln_income=unemployment), ///
spatial latitude(_CX) longitude(_CY) dist(100) pfe1(sfips)
SPATIAL CORRECTION
DistCutoff: 100
LagCutoff: 0
No HAC Correction
Absorbed FE: sfips
Included instruments: ln_population age
Instrumented: ln_income
Excluded instruments: unemployment
Kleibergen-Paap rk Wald F statistic: 307.097
Number of obs = 1412
Total (centered) SS = 58943.23761 Centered R2 = 0.1002
Total (uncentered) SS = 58943.23761 Uncentered R2 = 0.1002
Residual SS = 53037.54212

-------------------------------------------------------------------------------
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | -13.882 1.835 -7.56 0.000 -17.479 -10.285
ln_population | 1.650 0.400 4.12 0.000 0.866 2.434
age | -0.179 0.096 -1.86 0.063 -0.367 0.009
_cons | 0.000 0.241 0.00 1.000 -0.473 0.473
-------------------------------------------------------------------------------
nb: total SS, model and R2s are after partialling out.
To get the corrected ones use the option correctr2

注意到,以上回归结果中,除了最后控制固定效应的回归结果之外,其他结果的估计系数不变,因为 acreg 调整的是估计系数的标准误。

3.1.2 面板数据

. use "http://www.stata-press.com/data/r15/homicide_1960_1990.dta", clear
(S.Messner et al.(2000), U.S southern county homicide rate in 1960-1990)
. *不考虑误差相关进行回归,以下两条命令的结果等价
. acreg hrate ln_population age (ln_income=unemployment)
. ivreg2 hrate ln_population age (ln_income=unemployment), robust

. *允许州内各县存在相关性,以下两行命令等价
. acreg hrate ln_population age (ln_income=unemployment), id(_ID) ///
time(year) lagcut(30)
. ivreg2 hrate ln_population age (ln_income=unemployment), cluster(_ID)
. *考虑时间和空间的相关性
. acreg hrate ln_population age (ln_income=unemployment), ///
id(_ID) time(year) lagcut(30) spatial ///
latitude(_CX) longitude(_CY) dist(100)
SPATIAL CORRECTION
DistCutoff: 100
LagCutoff: 30
No HAC Correction
No Absorbed FEs
Included instruments: ln_population age
Instrumented: ln_income
Excluded instruments: unemployment
Kleibergen-Paap rk Wald F statistic: 24.838
Number of obs = 5648
Total (centered) SS = 286387.1082 Centered R2 = -0.0447
Total (uncentered) SS = 781008.6785 Uncentered R2 = 0.6169
Residual SS = 299188.6495

-------------------------------------------------------------------------------
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | 3.839 1.811 2.12 0.034 0.289 7.388
ln_population | -0.441 0.387 -1.14 0.254 -1.200 0.318
age | -0.463 0.143 -3.25 0.001 -0.742 -0.183
_cons | -7.265 9.814 -0.74 0.459 -26.500 11.970
-------------------------------------------------------------------------------

其中,id() 填写县市的 id,time() 填写年份变量;dist(100) 假设空间相关性在 100 km 之外就会消失;lag(30) 即假设在 30 个时期之后,同一个体在时间上的相关性就会消失。但是,这份数据的时间维度最多为 4 年,因此 lag() 中填写的数字如果超过 4,那么估计的系数标准误就不会再改变了。例如,这里填写lag(30) 与填写 lag(300) 的结果是一样的。

. *考虑了时间和空间上的相关性,进一步控制县的固定效应
. acreg hrate ln_population age (ln_income=unemployment), ///
id(_ID) time(year) lagcut(30) spatial latitude(_CX) ///
longitude(_CY) dist(100) pfe1(_ID)
SPATIAL CORRECTION
DistCutoff: 100
LagCutoff: 30
No HAC Correction
Absorbed FE: _ID
Included instruments: ln_population age
Instrumented: ln_income
Excluded instruments: unemployment
Kleibergen-Paap rk Wald F statistic: 49.605
Number of obs = 5648
Total (centered) SS = 144755.2058 Centered R2 = 0.0175
Total (uncentered) SS = 144755.2058 Uncentered R2 = 0.0175
Residual SS = 142223.0274

-------------------------------------------------------------------------------
hrate | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
ln_income | 0.259 1.150 0.23 0.822 -1.995 2.512
ln_population | -1.631 1.741 -0.94 0.349 -5.043 1.781
age | 0.147 0.201 0.73 0.465 -0.247 0.540
_cons | -0.000 0.174 -0.00 1.000 -0.342 0.342
-------------------------------------------------------------------------------
nb: total SS, model and R2s are after partialling out.
To get the corrected ones use the option correctr2

其中,pfe1(_ID) 控制 (partial out) 了县的固定效应。注意到,这里回归系数发生了很大的变化,这是因为控制固定效应,即先组内去均值而后回归,通常会影响模型估计的系数,而不只是影响系数标准误。

. *再考虑时间固定效应,加上选项 pfe2(year) 即可
. acreg hrate ln_population age (ln_income=unemployment), ///
id(_ID) time(year) lagcut(30) spatial latitude(_CX) ///
longitude(_CY) dist(100) pfe1(_ID) pfe2(year)

如果要计算 Newey 和 West (1987) 的异方差序列相关一致稳健标准误 (HAC),只需在以上命令最后加上选项 hac 即可。

3.2 网络模型

这里使用 Grund 和 Densley (2012,2015) 提供的伦敦年轻帮派网络数据。如果两个人共同犯案,那么这两个节点中间建立联系,即节点的边。这些联系构成了 54 个变量 (_net2_1 - _net2_54)。模型如下:

其中, 是个体, 是个体被逮捕的次数, 是个体在帮派中的位置, 包括年龄、居住地、和出生地。

图 2:逮捕与帮派网络结构

3.2.1 截面数据

. webnwuse gang //下载数据
. nwload gang //下载网络
. forvalues j = 1(1)54 {
2. qui replace _net2_`j'=1 in `j'
3. } //将邻接矩阵对角线换成 1

. *假设每个观测的误差项不相关,估计模型
. acreg Arrest Ranking Age Residence i.Birthplace
HETEROSKEDASTICITY ROBUST STANDARD ERRORS
No HAC Correction
No Absorbed FEs
Included instruments: Ranking Age Residence 1b.Birthplace 2.Birthplace
3.Birthplace 4.Birthplace
Number of obs = 54
Total (centered) SS = 2196.537037 Centered R2 = 0.2442
Total (uncentered) SS = 7497 Uncentered R2 = 0.7786
Residual SS = 1660.198039
------------------------------------------------------------------------------
Arrests | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Ranking | -2.168 0.821 -2.64 0.008 -3.777 -0.560
Age | 0.767 0.309 2.48 0.013 0.160 1.373
Residence | -1.535 1.562 -0.98 0.326 -4.595 1.526
Birthplace |
Caribbean | 0.000 (empty)
East Africa | -0.252 2.870 -0.09 0.930 -5.876 5.372
UK | 0.701 2.228 0.31 0.753 -3.666 5.069
West Africa | 0.817 2.013 0.41 0.685 -3.127 4.762
_cons | 2.317 7.507 0.31 0.758 -12.396 17.030
------------------------------------------------------------------------------

接着,采用 Colella 等 (2019) 的稳健标准误,即假设每个个体与其相连的其他个体存在相关。links_mat(_net2_*) 声明网络结构由 _net2_1_net2_54 所定义;dist(1) 声明在第一个连接之后节点的相关性就会消失,也就是只考虑直接相连的两点的相关性,不考虑间接相连。如果设为 dist(2),则是认为通过一个中间点间接相连的两个点也具有相关性,即两点之间最短距离在 2 步以内的情况。

. acreg Arrest Ranking Age Residence i.Birthplace , ///
network links_mat(_net2_*) dist(1)
NETWORK CORRECTION
DistCutoff: 1
LagCutoff: 0
No HAC Correction
No Absorbed FEs
Included instruments: Ranking Age Residence 1b.Birthplace 2.Birthplace
3.Birthplace 4.Birthplace
Number of obs = 54
Total (centered) SS = 2196.537037 Centered R2 = 0.2442
Total (uncentered) SS = 7497 Uncentered R2 = 0.7786
Residual SS = 1660.198039
------------------------------------------------------------------------------
Arrests | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Ranking | -2.168 0.713 -3.04 0.002 -3.566 -0.771
Age | 0.767 0.373 2.05 0.040 0.035 1.498
Residence | -1.535 1.619 -0.95 0.343 -4.708 1.638
Birthplace |
Caribbean | 0.000 (empty)
East Africa | -0.252 2.259 -0.11 0.911 -4.679 4.175
UK | 0.701 2.985 0.23 0.814 -5.149 6.551
West Africa | 0.817 2.260 0.36 0.718 -3.613 5.247
_cons | 2.317 7.826 0.30 0.767 -13.021 17.656
------------------------------------------------------------------------------

如果要将用于计算方差—协方差矩阵的 0-1 权重矩阵,改为权重随着网络距离递减的矩阵,即直接相连取值为 1,间接 2 步相连取值为 0.5,那么选择选项 bartlett

. acreg Arrest Ranking Age Residence i.Birthplace, ///
network links_mat(_net2_*) dist(2) bartlett
NETWORK CORRECTION
DistCutoff: 2
LagCutoff: 0
No HAC Correction
No Absorbed FEs
Included instruments: Ranking Age Residence 1b.Birthplace 2.Birthplace
3.Birthplace 4.Birthplace
Number of obs = 54
Total (centered) SS = 2196.537037 Centered R2 = 0.2442
Total (uncentered) SS = 7497 Uncentered R2 = 0.7786
Residual SS = 1660.198039
------------------------------------------------------------------------------
Arrests | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Ranking | -2.168 0.769 -2.82 0.005 -3.675 -0.662
Age | 0.767 0.343 2.24 0.025 0.095 1.438
Residence | -1.535 1.591 -0.96 0.335 -4.652 1.583
Birthplace |
Caribbean | 0.000 (empty)
East Africa | -0.252 2.582 -0.10 0.922 -5.313 4.809
UK | 0.701 2.634 0.27 0.790 -4.461 5.863
West Africa | 0.817 2.140 0.38 0.703 -3.377 5.011
_cons | 2.317 7.668 0.30 0.762 -12.712 17.346
------------------------------------------------------------------------------

此外,如果要控制出生地固定效应,仅需添加选项 pfe1(Birthplace)

3.2.2 面板数据

这是一份构造的数据,,只有 4 个构造的变量,即 。其中假定 是内生解释变量,而 是工具变量。

. use "https://gitee.com/arlionn/data/raw/master/data01/acregfakedata.dta", clear
. *不存在相关性,也不控制固定效应,以下两条命令等价
. acreg Y_it X1_it (Z_it=IV_it)
. ivreg2 Y_it X1_it (Z_it=IV_it), robust

. *考虑个体时间序列相关性,不考虑个体相关性,以下三条命令等价
. acreg Y_it X1_it (Z_it=IV_it) , id(id) time(time) lag(10)
. ivreg2 Y_it X1_it (Z_it=IV_it) , cluster(id)
. acreg Y_it X1_it (Z_it=IV_it), cluster(id)

现在考虑同一时期,直接相连的节点之间的相关性,但不考虑不同时期,直接相连的节点之间的相关性,添加选项 links_mat(clus*),即clus_1clus_100,共 100 个个体。因此,dist(1) 设为 1,即间接相连的相关性不考虑。

. eststo: acreg Y_it X1_it (Z_it=IV_it), ///
id(id) time(time) lag(10) network ///
links_mat(clus*) dist(1)
NETWORK CORRECTION
DistCutoff: 1
LagCutoff: 10
No HAC Correction
No Absorbed FEs
Included instruments: X1_it
Instrumented: Z_it
Excluded instruments: IV_it
Kleibergen-Paap rk Wald F statistic: 22.720
Number of obs = 1000
Total (centered) SS = 2834382.139 Centered R2 = 0.4913
Total (uncentered) SS = 4195421.4 Uncentered R2 = 0.6563
Residual SS = 1441795.144

------------------------------------------------------------------------------
Y_it | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Z_it | 1.029 0.384 2.68 0.007 0.275 1.782
X1_it | 1.229 0.450 2.73 0.006 0.348 2.110
_cons | 11.619 4.743 2.45 0.014 2.322 20.915
------------------------------------------------------------------------------
(est1 stored)

在以上命令中,通过选项 pfe1(id)pfe2(tim)可控制个体和时间固定效应。如果假设同一年存在个体之间的相关性,而同一个体在时间维度上不存在任何相关性,只需把 lag(0) 设定为 0 即可。同理,如果假设同一个体在 3 期以内存在相关性,而超过 3 期则不存在相关性,只需把 lag(3) 设定为 3 即可。

3.3 空间相关性

Colella 等 (2020) 在这一部分是想将其编写的 acreg 与 Hsiang (2010) 的考虑空间相关性的命令 ols_spatial_HAC 进行比较。

*安装命令 ols_spatial_HAC
local u1 "https://gitee.com/arlionn/data/raw/master/data01/ols_spatial_HAC.ado"
local u2 "`c(sysdir_plus)'/o"
copy `u1' "`u2'/ols_spatial_HAC.ado", replace

3.3.1 截面数据

. *不考虑相关性和固定效应,用混合横截面回归
. use "https://gitee.com/arlionn/data/raw/master/data01/acregfakedata.dta", clear
. qui tab time, g(time_d) //生成时间 id
. qui tab id, g(id_d) //生成个体 id
. gen const = 1 //生成截距项
. gen fakeid = _n //生成虚假个体 id
. gen faketime = 1 //生成虚假时间

. *ivreg2
. qui ivreg2 Y_it X1_it Z_it, robust
. est store m1
. *acreg
. qui acreg Y_it X1_it Z_it
. est store m2
. *ols_spatial_HAC (ols_spat)
. qui ols_spatial_HAC Y_it X1_it Z_it const, ///
lat(lat) lon(lon) panelvar(fakeid) timevar(time) ///
distcutoff(0.000001) lagcutoff(0)
. est store m3

. *结果进行对比
. esttab m*, keep(X1_it Z_it) mtitles(ivreg2 acreg ols_spat)
------------------------------------------------------------
(1) (2) (3)
ivreg2 acreg ols_spat
------------------------------------------------------------
X1_it 0.739*** 0.739*** 0.739***
(3.93) (3.93) (3.93)

Z_it 1.453*** 1.453*** 1.453***
(30.63) (30.63) (30.63)
------------------------------------------------------------
N 1000 1000 1000
------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

可以看出,在这种设定下,ivreg2acregols_spatial_HAC 三者结果没有区别。

3.3.2 空间相关

假设横截面数据,而非空间数据,但是假设个体在 500 公里范围内存在相关性。同时采用二元权重矩阵 (第 1—2 列) 与随距离递减的权重矩阵(bartlett) (第 3—4 列)。

. *二元权重矩阵
. *acreg
. qui acreg Y_it X1_it Z_it, spatial latitude(lat) ///
longitude(lon) dist(500)
. est store m1
. *ols_spatial_HAC (ols_spat)
. qui ols_spatial_HAC Y_it X1_it Z_it const, lat(lat) ///
lon(lon) panelvar(fakeid) timevar(faketime) ///
distcutoff(500) lagcutoff(0)
. est store m2

. *计算方差的矩阵的权重随距离递减
. *acreg
. qui acreg Y_it X1_it Z_it, spatial latitude(lat) ///
longitude(lon) dist(500) bartlett
. est store m3
. *ols_spatial_HAC (ols_spat)
. qui ols_spatial_HAC Y_it X1_it Z_it const, lat(lat) ///
lon(lon) panelvar(fakeid) timevar(faketime) ///
distcutoff(500) lagcutoff(0) bartlett
. est store m4

. *列示结果进行对比
. esttab m1 m2 m3 m4, keep( X1_it Z_it) mtitles(acreg ///
ols_spat acreg_b ols_spat_b 2hdfespat_b)

----------------------------------------------------------------------------
(1) (2) (3) (4)
acreg ols_spat acreg_b ols_spat_b
----------------------------------------------------------------------------
X1_it 0.739*** 0.739*** 0.739*** 0.739***
(3.34) (3.34) (3.56) (3.56)

Z_it 1.453*** 1.453*** 1.453*** 1.453***
(29.83) (29.83) (29.82) (29.82)
----------------------------------------------------------------------------
N 1000 1000 1000 1000
----------------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

3.3.3 空间和时间的相关性

考虑空间和时间的相关性,acreg 需要指定 hac 以考虑异方差—自相关稳健标准误,而另一个变量则默认使用异方差-自相关稳健标准误。

. *binary weighting matrix
. *acreg
. qui acreg Y_it X1_it Z_it, spatial latitude(lat) longitude(lon) ///
dist(500) id(id) time(time) lag(10) hac
. est store m1
. *ols_spatial_HAC (ols_spat)
. qui ols_spatial_HAC Y_it X1_it Z_it const, lat(lat) lon(lon) ///
panelvar(id) timevar(time) distcutoff(500) lagcutoff(10)
. est store m2

. *linear bartlett window
. *acreg
. qui acreg Y_it X1_it Z_it, spatial latitude(lat) longitude(lon) ///
dist(500) id(id) time(time) lag(10) hac bartlett
. est store m3
. *ols_spatial_HAC (ols_spat)
. qui ols_spatial_HAC Y_it X1_it Z_it const, lat(lat) lon(lon) ///
panelvar(id) timevar(time) distcutoff(500) lagcutoff(10) bartlett
. est store m4

. *table of results
. esttab m1 m2 m3 m4, keep( X1_it Z_it) mtitles(acreg ///
ols_spat acreg_b ols_spat_b 2hdfespat_b)

----------------------------------------------------------------------------
(1) (2) (3) (4)
acreg ols_spat acreg_b ols_spat_b
----------------------------------------------------------------------------
X1_it 0.739*** 0.739*** 0.739*** 0.739***
(3.54) (3.54) (3.78) (3.78)

Z_it 1.453*** 1.453*** 1.453*** 1.453***
(26.49) (26.49) (28.50) (28.50)
----------------------------------------------------------------------------
N 1000 1000 1000 1000
----------------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

可以看到,在同时考虑空间和时间相关之后,两个变量估计的标准误出现了细小差别,acreg 估计的标准误更大一点。

3.3.4 固定效应模型

考虑空间和时间相关,以及高维固定效应,这里控制个体和时间固定效应。

. *binary weighting matrix
. *acreg
. qui acreg Y_it X1_it Z_it , pfe2(id) pfe1(time) spatial ///
latitude(lat) longitude(lon) dist(500) id(id) time(time) lag(10) hac
. est store m1
. *ols_spatial_HAC (ols_spat)
. qui ols_spatial_HAC Y_it X1_it Z_it const id_d2-id_d100 ///
time_d2-time_d10, lat(lat) lon(lon) panelvar(id) ///
timevar(time) distcutoff(500) lagcutoff(10)
. est store m2

. *linear bartlett window
. *acreg
. qui acreg Y_it X1_it Z_it , pfe2(id) pfe1(time) spatial ///
latitude(lat) longitude(lon) dist(500) id(id) ///
time(time) lag(10) hac bartlett
. est store m3
. *ols_spatial_HAC (ols_spat)
. qui ols_spatial_HAC Y_it X1_it Z_it const id_d2-id_d100 ///
time_d2-time_d10, lat(lat) lon(lon) panelvar(id) ///
timevar(time) distcutoff(500) lagcutoff(10) bartlett
. est store m4

. *table of results
. esttab m1 m2 m3 m4, keep( X1_it Z_it) mtitles(acreg ols_spat ///
acreg_b ols_spat_b 2hdfespat_b)
----------------------------------------------------------------------------
(1) (2) (3) (4)
acreg ols_spat acreg_b ols_spat_b
----------------------------------------------------------------------------
X1_it 0.740*** 0.740*** 0.740*** 0.740***
(3.39) (3.39) (3.75) (3.75)

Z_it 1.418*** 1.418*** 1.418*** 1.418***
(28.84) (28.84) (29.06) (29.06)
----------------------------------------------------------------------------
N 1000 1000 1000 1000
----------------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

这里控制了两种固定效应后,系数和显著性的差异变化很小,很大可能是因为这是作者构造的模拟数据。但是,这里两个命令估计的系数标准误略有差异,acreg 估计的标准误小一点。

4. 参考文献

  • Baum C F, Schaffer M E, Stillman S. Instrumental variables and GMM: Estimation and testing[J]. The Stata Journal, 2003, 3(1): 1-31. -PDF-
  • Bertrand M, Duflo E, Mullainathan S. How much should we trust differences-in-differences estimates?[J]. The Quarterly journal of economics, 2004, 119(1): 249-275. -PDF-
  • Cameron A C, Miller D L. A practitioner’s guide to cluster-robust inference[J]. Journal of human resources, 2015, 50(2): 317-372. -PDF-
  • Conley T G. GMM estimation with cross sectional dependence[J]. Journal of econometrics, 1999, 92(1): 1-45. -PDF-
  • Colella F, Lalive R, Sakalli S O, et al. Inference with arbitrary clustering[J]. 2019. -PDF-
  • Hsiang S M. Temperatures and cyclones strongly associated with economic production in the Caribbean and Central America[J]. Proceedings of the National Academy of sciences, 2010, 107(35): 15367-15372. -PDF-
  • Messner S F, Anselin L, Baller R D, et al. The spatial patterning of county homicide rates: An application of exploratory spatial data analysis[J]. Journal of Quantitative criminology, 1999, 15(4): 423-450. -PDF-
  • White H. A heteroskedasticity-consistent covariance matrix estimator and a direct test for heteroskedasticity[J]. Econometrica: journal of the Econometric Society, 1980: 817-838. -PDF-
  • 洪永淼, 赵西亮, 吴吉林. 高级计量经济学[M]. 高等教育出版社, 2011.

5. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh 标准误 异方差, m
安装最新版 lianxh 命令:
ssc install lianxh, replace

  • 专题:Stata命令
    • Stata:异方差和自相关稳健F检验和t检验-T316
    • wcbregress:面板聚类标准误
  • 专题:回归分析
    • Stata:聚类调整标准误笔记
    • Stata:聚类调整后的标准误-Cluster-SE
    • 小样本下OLS估计的纠偏聚类标准误
  • 专题:IV-GMM
    • 找不到IV?基于异方差构造工具变量
  • 专题:倍分法DID
    • 倍分法(DID)的标准误:不能忽略空间相关性

New! Stata 搜索神器:lianxhsongbl  GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
. ssc install lianxh
. ssc install songbl
👉  使用:
. lianxh DID 倍分法
. songbl all

🍏 关于我们

  • 连享会 ( www.lianxh.cn,推文列表) 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。


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

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