🍎 连享会主页:lianxh.cn
「十年口碑,桃李三千」 🎦 2021 Stata 暑期班 📅 2021 年 7 月 20-30 日 🔑 连玉君(中山大学);江艇 (中国人民大学) 🍓 课程主页 :https:///lianxh/PX
New! lianxh
命令发布了: GIF 动图介绍 随时搜索 Stata 推文、教程、手册、论坛,安装命令如下: . ssc install lianxh
作者 :张子楠 (浙江财经大学)邮箱 :zinanzh@gmail.com
目录
温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」 。或直接长按/扫描如下二维码,直达原文:
在最近的一篇推文中 (「你的几百个回归结论可能都是错的,只因少做了这件事...... 」),作者简明扼要地介绍了「外部有效性 (External Validity),有时也称为「外部效度」」的概念,并给出了一些通俗易懂的例子。本文则来点硬核干货,介绍一下如何在 Stata 中实现「外部有效性」的检验。
1. 背景知识 1.1 外部有效性 在政策评估中,对政策效应的估计大多集中在处理效应为常数,或者说平均处理效应 (ATE) 的情形。此时,隐含地假设了因果效应具有同质性,即所有个体处理效应都一样。然而,如果放宽这个假设,引入处理效应的异质性,那么就需要考虑一个问题:当类似于以下情况发生变化时,研究结论是否会改变?
A 州减税政策的评估结果,是否能直接用来指导 B 州的减税政策设计? 对上述问题的回答,实际上就是在评价估计结果的外部有效性问题。《基本无害的计量经济学》中有一个例子可以很好说明这个问题。具体来看:
研究一 :利用随机抽取的参军资格作为工具变量 IV,来估计越战服役对收入的影响;但是,研究一的估计结果却不能用在研究二中。这是由于两个样本中个体并不相同,即研究一中更接近随机,而研究二中那些志愿参军的人员,可能本身就是收入偏低的劳动人群。
此外,有关「外部有效性」的概念,也可以参考如下文章:
1.2 局部平均处理效应 在工具变量 (IV) 的分析框架中,我们通过引入工具变量来创造一个因果链条:通过工具变量 Z 影响我们感兴趣的变量 ,然后 再去影响潜在结果 。值得注意的是,IV 估计结果只是局部平均处理效应 (Local Average Treatment Effect,LATE),而非实验处理组所有人的处理效应。
同样以上面参军例子来解释。Z 为随机抽取的资格, 为是否参军。那么 IV 估计出来的结果,实质上捕捉到的是这样一类人群:如果有参军资格 ( ),则参军 ( );如果没有参军资格 ( ),则不参军 ( )。在 LATE 框架下,将其称为依从工具变量者 (compliers)。此外,还有以下两类人群,IV 估计结果并不能解释。
一是始终接受者 :如果有参军资格 ( ),则参军 ( ),如果没参军资格 ( ),还要参军 ( );二是始终不接受者 :如果有参军资格 ( ),也不参军 ( ),如果没有参军资格 ( ),则不参军 ( )。因此,当依从工具变量者 (compliers) 只占实验人群一部分时,IV 估计出来平均因果效应往往不等于所有 =1 的人的平均处理效应。同样地,IV 估计出来的未受处理的个体的平均处理效应也不等于所有 =0 的人的平均处理效应。
1.3 LATE 的外部有效性问题 那么,对于 IV 估计方法,一个需求自然而然就产生了:当随机实验中不只是 compliers 人群时,如何在工具变量局部因果框架下,去估计所有实验组个体的平均因果效应呢?或者说,如何评估该实验中 LATE 的外部有效性呢?
幸运的是,利用异质性因果效应和边际处理效应 (MTE) 的内容,我们在运用工具变量时,能在实现识别内部效度同时,也兼顾外部有效性。更重要的是,不仅可以判断是否 LATE 结果等于全部人群,也能在不相等时,寻找将 LATE 结果外推到全部实验组人群的策略。Kowalski (2016,2018) 便是基于 MTE 的分析框架,以美国 Oregon 州开展的 Oregon Health Insurance Experiment 实验 (以下简称为 Oregon 实验) 为例,分析了 LATE 的外部有效性问题。
同时,作者还编写了两个 Stata 命令 (mtebinary
和 mtemore
) 来实现上述操作。其中,mtemore
为 mtebinary
的旧版本,两者输出结果的含义较为相似。因此,本文将着重介绍 mtebinary
的用法。此外还有一个命令 cqiv
,同样是关于 IV 估计的异质性分析,也同样涉及到 LATE 效应的外部有效性问题。关于 cqiv
命令的详细介绍,请参考计量经济圈推文「前沿: 删失数据分位数工具变量(CQIV)估计, 做删失数据异质性效应分析」 。
接下来,本文将从以下四个部分展开介绍:首先介绍 Oregon 实验,并在 LATE 框架下进行刻画;其次介绍 Kowalski (2016,2018) 的识别策略;再次使用 mtebinary
命令以 Oregon 实验为例,分析工具变量法 LATE 效应的外部有效性;最后展示命令 mtemore
和 cqiv
的用法。
2. Oregon 实验简介 在 2008 年,Oregon 州决定将针对低收入人群的公共医疗补助的覆盖范围进行扩张。但由于资金有限,不能将所有低收入人群都纳入医疗补助范围,于是 Oregan 州决定通过抽签的方式,来决定那些在候选名单上的人,以及谁有资格获得医疗补助。据统计,大约有 75000 人进入了候选名单,而最终只有 30000 人获得了申请医疗补助资格。这样,3000 个获得公共医疗补助的人便构成了实验组样本,而剩下的 45000 人则成为对照组。这种抽签方式,相当于创造了一个随机实验,Oregon 实验也因此被认为是随机实验的典范。
Kowalski (2016,2018) 研究了 Oregon 实验对该州急救室使用情况的影响。根据 Oregon 州的规定,即使病人没有保险,州内急救室都不能拒绝对其救治,从而有一部分无保险人群会通过急救室这个渠道获得公共医疗补助。自然,公共医疗补助覆盖人群范围的扩大,会影响到急救室的使用情况。
设定急救室使用情况为 2, 为有关病人是否获得公共医疗补助的指示变量:当 =1 时表示病人获得医疗补助,当 =0 时表示病人没有医疗补助。Z 同样为指示变量:当 表示抽签成功,获得申请医疗补助的资格,当 时表示抽签失败,没有因抽签获得医疗补助资格。显然 Z 可以作为 的一个工具变量:一方面抽签的方式保证了 Z 的外生性,另一方面 Z 和 显然是相关的。值得注意的是,这里用 Z 作为工具变量来识别出来的处理效应是局部平均处理效应,即只识别了 compliers 这一类人群的处理效应。
然而在 Oregon 实验中,可能存在 compliers、always-takers 和 never-takers 这三类人群。当人们报名参与 Oregon 实验申请医疗补助时,并不需要提供证明他们符合条件的材料 (比如低收入证明),材料只有抽签成功后才被要求提供。这样,
对于 always-takers 而言,总会去报名加入实验,将自己加入候选名单,进入实验的样本集里。当 always-takers 抽签失败 ( ) 时,仍有其中一部分人会依据 Oregon 州规定,通过急救室的渠道去享受医疗补助,进入处理组 ( ); 类似地,对于 never-takers 而言,他们即使抽签成功 ( ),也不会申请医疗补助 ( )。原因或是他们材料不符合,或是没有在规定时间内提交证明材料。 3. Oregon 实验中 LATE 外部有效性的识别策略 Kowalski (2016,2018) 分析了在 MTE 框架下,当内生变量和工具变量均为二元变量时,如何识别 always-takers 和 never-takers 两类人群对实验平均因果效应的影响。为此,Kowalski 引入了干预概率 (treatment probability) 这个概念。
干预概率是指进入处理组的概率。Kowalski (2016,2018) 的一个核心假设是:个体选择是否要进入处理组,取决于其加入后的预期效用是否大于不加入的预期效用。其又等价于:如果不可观测的加入净成本 ( ) 低于加入的净效用增加,个体选择加入处理组。净效用增加又可表示为个体的预期干预概率: ,其中 为协变量。进而,我们就可以借用 的概念在同一维度上描述三类人群。
下图为 Kowalski (2018) 给出的示意图。横轴表示 ,取值为 0 到 1。Always-takers 人群是 特别小,以至总有 ,从而总会选择加入处理组。Never-takers 人群是 特别大,从而总会选择加入对照组。Compliers 人群的 则介于两者之间。
以 点处为例,只有预期干预概率 ( ) 大于 时,该点处个体才会加入干预组。如图所示, 是 always-takers 与 compliers 人群的分界点。同理, 是 compliers 与 never-takers 人群的分界点。这样,随着实验参与人群的扩张,预期干预概率也逐渐增加。刚开始是 always-takers 人群加入实验、然后是 compliers 人群加入实验,最后是 never-takers 人群加入实验。
在此基础上,Kowalski (2016,2018) 界定了三种边际概念:MUO(p), MTO(p) 和 MTE(p)。其中,MUO(p) 是预期干预概率为 p 时的对照组结果,MTO(p) 是指预期干预概率为 p 时实验组结果,MTE(p) 为预期干预概率为 p 时的实验组与对照组的差异。在以上准备工作的基础上,我们就可以进行正式的分析了。
首先,通过计算 , , , ,就可以计算出 always-takers 的平均实验组结果 ( )、compliers 人群的平均实验组结果 ( )、和平均对照组结果 ( ),以及 never-takers 人群的平均对照组结果 ( )。
其次,加上 MTE 分析框架里经常使用的线性假设,就可以算出 , , 三个点的边际结果。再结合线性假设,就可以连点成线,计算出所有点出的效应。从而实现在二元变量 MTE 分析中引入连续变量 MTE 分析方法。
处理效应的异质性定义:如果 MUO(p)在不同 p 处存在差异,则反映了存在个体的自选择效应,即随着预期干预概率的增大,越来越多个体从选择不加入变为选择加入。如果 MTO(p)在不同 p 处存在差异,则反映了可能存在处理效应的异质性,或个体自选择效应,或两者兼有。两者之差,即 MTE(p) 如果在不同 p 处存在差异,就表明处理效应存在异质性; LATE 的外部有效性:如果 ATE(p) 在三类群体间存在较大差异,就无法直接用 IV 估计出来的 compliers 人群的 LATE 效应来解释全部人群的处理效应。需要对 LATE 结果进行外推,才能获得样本所有受处理者处理效应 (treatment effect on the treated,TOT)。 4. 外部有效性识别的 Stata 实现 4.1 mtebinary 命令安装及语法介绍 mtebinary
命令安装如下:
ssc install mtebinary, replace
mtebinary
的语法格式为:
mtebinary outcome (endogvar = instrumen) [covariates] [, options]
其中,
outcome
为结果变量,可以是二元、离散或者连续变量;instrument
为工具变量,必须是二元变量;opitions
主要包括两类:
第一类为 Estimation
设置的选项,其中, poly(#)
括号里填估计时回归函数的幂,默认为 1 次,即线性;reps(#)
括号里填 bootstrap
的次数,默认为 200;seed(#)
括号里填 bootstrap
的随机种子数,默认是 6574358;bootsample(opt)
括号里填 bootstrap
的方式,可以是 strata(varlist)
,cluster(varlist)
,或者 weight
;weightvar(varname)
括号里填需要赋予权重的变量名,默认没有赋予权重;第二类为 Post-Estimation
的相关选项,其中, summarize(varlist)
括号里填协变量名称,输出这些协变量的三类人群的统计描述;graphsave(graphsave)
括号里填输出图像的名称,默认名称为 mtegrapha。4.2 mtebinary 命令使用范例及结果解释 下面以没有协变量、MTE 效应为线性为例来展示命令的用法和结果。相关代码如下:
. net get mtebinary //下载数据 mtebinary_data.dta 到当前文件夹 checking mtebinary consistency and verifying not already installed... copying into current directory... copying mtebinary_data.dta copying mte1.eps.pdf copying mte1_cov.eps.pdf copying mte1_cov_quad.eps.pdf ancillary files successfully copied. . use mtebinary_data.dta, clear . mtebinary Y2 (D = Z), reps (0) summarize (age female) graphsave (mte)
其中,
Y2
为急救室使用情况,D
为是否接受医疗服务,Z
为是否有资格医疗补助;reps(0)
表示 bootstrap
次数为 0;summarize(age female)
表示显示 compliers、always-takers 和 never-takers 这三类人群的 age
和 female
的统计性质;graphsave (mte)
将图形结果保存名为 mte 的 pdf 文件。主要回归结果为三个表和两个图,具体来看。
第一个表格为 'Average Characteristics of Always Takers, Compliers and Never Takers',如下所示。其中第一列显示了所有人群的结果,第二列显示了 always-takers 人群的结果,第三列显示了 never-takers 人群的结果,第四列为 always-takers 人群和 compliers 人群的差异,第五列为 compliers 人群和 never-takers 人群的差异。从变量的统计结果,可以计算出 , 。
Beginning Estimation of Marginal Treatment Effects (MTE) with a Binary Instrument. MTE has been specified as a polynomial of order 1. The number of bootstrap replication is 0 NOTE: $Y$ou have specified zero bootstrap replication. No standard error will be computed Average Characteristics of Always Takers, Compliers and Never Takers ------------------------------------------------------------------- All (1) (2) (3) Differences Always Compliers Never (1)-(2) (2)-(3) Takers Takers ------------------------------------------------------------------- age 49.25 54.32 50.00 44.65 4.32 5.35 female 0.56 0.27 1.00 0.79 -0.73 0.21 Count 500.00 175.00 125.00 200.00 -------------------------------------------------------------------
可以发现,不同类型人群间存在较为明显的统计差异。比如对于年龄而言,always-takers 人群年平均龄大于 compliers 人群 4.32 岁,约 8.6%;而 compliers 人群年龄平均大于 never-takers 人群 5.35 岁,约 10.67%。在这里,always-takers 人群最大,他们本身对医疗补助的需求也最大,而 never-takers 人群年龄最小,他们对医疗补助需求最小。
实际上,他们是否参与,部分可能是逆向选择的结果。可见,如果忽略不同类别间人群的显著差异,将 LATE 效应当成全部人群的平均处理效应,很有可能导致高估或低估的错误。同样,性别变量的组间差异也存在类似的性质。
第二个表格为 'Marginal Treated Outcome, Untreated Outcome, and Treatment Effect',分别给出了三种效应的斜率和截距。有了斜率和截距,我们就可以将仅适用于 compliers 人群的 LATE 效应外推到 never-takers 人群和 always-takers 人群。
Marginal Treated Outcome, Untreated Outcome, and Treatment Effect --------------------------- Intercept Slope --------------------------- MTO 965.00 -600.00 MUO 550.00 -400.00 MTE 415.00 -200.00 ---------------------------
第三个表格为 'Average Outcome of Always Takers, Compliers, and Never Takers',给出不同人群的处理效应和非处理效应。计算方法为利用第二个表 中的结果,分别计算 MTO,MUO 和 MTE 在 , , 三个区间上的期望。
Average Outcome of Always Takers, Compliers, and Never Takers ---------------------------------------------------------------------------- Always Compliers Never Untreated Treated Takers Takers Outcome Test Outcome Test (1) (2) (3) (2)-(3) (1)-(2) ---------------------------------------------------------------------------- Treated Outcome 860.00 680.00 485.00 180.00 Untreated Outcome 480.00 360.00 230.00 130.00 Treatment Effect 380.00 320.00 255.00 ----------------------------------------------------------------------------
对于 IV 计算出来的 LATE,在这里就等于第(2)列中 。我们同样可以用 IV 回归方法来检验一下结果是否相符。IV 回归的语法和结果如下所示,再次验证了 IV 回归结果仅仅是识别了 compliers 人群的处理效应。
. ivregress 2sls Y2 (D=Z) Instrumental variables (2SLS) regression Number of obs = 500 Wald chi2(1) = 52.50 Prob > chi2 = 0.0000 R-squared = 0.8103 Root MSE = 120.95 --------------------------------------------------------------- Y2 | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------+------------------------------------------------------- D | 320.000 44.165 7.25 0.000 233.439 406.561 _cons | 371.000 20.597 18.01 0.000 330.631 411.369 --------------------------------------------------------------- Instrumented: D Instruments: Z
此外,回归结果还包含了两个图形,如下所示。左图为 'Average outcomes',对应第三个表的结果。右图为 'MTO(p), MUO(p), MTE(p)',对应第二个表的结果。观察右图,利用处理效应连续性的假定,对于始终 =1 的 always Takers,我们也能获得出他的对照组结果 MUO(p) 和处理效应 MTE(p)。而对于始终 =0 的 never Takers,我们也能获得他的实验组结果 MTO(p) 和处理效应 MTE(p)。
5. mtemore 与 cqiv 命令 5.1 mtemore 命令 mtemore
命令安装如下:
ssc install mtemore, replace
mtemore
命令语法如下:
mtemore outcome (endogvar = instrument) [covariates] [, options]
需要注意的是,mtemore
中 bootstrap
次数不能为 0,最低为 2 次。
/* . net get mtebinary //下载数据 mtebinary_data.dta 到当前文件夹 */ . use mtebinary_data.dta, clear . mtemore Y2 (D = Z), summarize(age female) reps(2) graphsave(mtemore)
5.2 cqiv 命令 cqiv
命令安装如下:
ssc install cqiv, replace
cqiv
命令语法如下:
cqiv depvar [varlist] (endogvar = instrument) [if] [in] [weight] [, options]
. net get cqiv //下载数据 alcoholengel.dta 到当前文件夹 checking cqiv consistency and verifying not already installed... copying into current directory... copying alcoholengel.dta copying cqiv_article.pdf ancillary files successfully copied. . use alcoholengel, clear . cqiv alcohol logexp2 nkids (logexp = logwages nkids), /// quantiles(25 50 75)
限于篇幅,mtemore
和 cqiv
命令结果不在一一展示。
6. 参考文献 Kowalski A E. oing more when you're running late: Applying marginal treatment effect methods to examine treatment effect heterogeneity in experiments[R]. National Bureau of Economic Research, 2016. -PDF- Kowalski A E. Extrapolation using selection and moral hazard heterogeneity from within the oregon health insurance experiment[M]. Cambridge, MA: National Bureau of Economic Research, 2018. -PDF- Chernozhukov V, Fernández-Val I, Kowalski A E. Quantile regression with censoring and endogeneity[J]. Journal of Econometrics, 2015, 186(1): 201-221. -PDF- 乔舒亚・安格里斯特,约恩・斯特芬・皮施克,《精通计量:从原因到结果的探寻之旅》[M],格致出版社,2019 乔舒亚・安格里斯特,约恩・斯特芬・皮施克,《基本无害的计量经济学:实证研究者指南》[M],格致出版社,2012 计量经济圈推文:前沿:删失数据分位数工具变量(CQIV)估计,做删失数据异质性效应分析 -Link-