acreg:允许干扰项随意相关的稳健性标准误
👇 连享会 · 推文导航 | www.lianxh.cn
🍎 Stata:Stata基础 | Stata绘图 | Stata程序 | Stata新命令 📘 论文:数据处理 | 结果输出 | 论文写作 | 数据分享 💹 计量:回归分析 | 交乘项-调节 | IV-GMM | 时间序列 | 面板数据 | 空间计量 | Probit-Logit | 分位数回归 ⛳ 专题:SFA-DEA | 生存分析 | 爬虫 | 机器学习 | 文本分析 🔃 因果:DID | RDD | 因果推断 | 合成控制法 | PSM-Matching 🔨 工具:工具软件 | Markdown | Python-R-Stata 🎧 课程:公开课-直播 | 计量专题 | 关于连享会
作者: 袁煜玲 (厦门大学)
邮箱: 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 标准误的估计
在默认情况下,我们会假设随机扰动项 的方差 为常数,即同方差假定。然而,这一假设在大多数时候都不成立。
不过,即使 不满足同方差假定,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_iv
是 varlist2
的工具变量。
*时间维度语法
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
指定第二个需要控制高维固定效应的变量;dropsingletons
在pfe1 (and pfe2)
被指定的前提下,删除单独的组。储存选项: storeweights
选项仅在spatial
、network
或varlist_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)。模型如下:
其中, 是个体, 是个体被逮捕的次数, 是个体在帮派中的位置, 包括年龄、居住地、和出生地。
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_1
至clus_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
可以看出,在这种设定下,ivreg2
、acreg
、ols_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 搜索神器:
lianxh
和songbl
GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
. ssc install lianxh
. ssc install songbl
👉 使用:
. lianxh DID 倍分法
. songbl all
🍏 关于我们
连享会 ( www.lianxh.cn,推文列表) 由中山大学连玉君老师团队创办,定期分享实证分析经验。 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。