IV估计中的外部有效性(External Validity)

发布时间:2021-05-20 阅读 386

Stata连享会   主页 || 视频 || 推文 || 知乎

温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。

New! lianxh 命令发布了:
随时搜索推文、Stata 资源。安装命令如下:
. ssc install lianxh
详情参见帮助文件 (有惊喜):
. help lianxh

课程详情 https://gitee.com/lianxh/Course

课程主页 https://gitee.com/lianxh/Course

⛳ Stata 系列推文:

作者:张子楠 (浙江财经大学)
邮箱zinanzh@gmail.com


目录


在最近的一篇推文中 (「你的几百个回归结论可能都是错的,只因少做了这件事......」),作者简明扼要地介绍了「外部有效性 (External Validity),有时也称为「外部效度」」的概念,并给出了一些通俗易懂的例子。本文则来点硬核干货,介绍一下如何在 Stata 中实现「外部有效性」的检验。

1. 背景知识

1.1 外部有效性

在政策评估中,对政策效应的估计大多集中在处理效应为常数,或者说平均处理效应 (ATE) 的情形。此时,隐含地假设了因果效应具有同质性,即所有个体处理效应都一样。然而,如果放宽这个假设,引入处理效应的异质性,那么就需要考虑一个问题:当类似于以下情况发生变化时,研究结论是否会改变?

  • 当有新个体加入实验,研究结论是否会改变?
  • A 州减税政策的评估结果,是否能直接用来指导 B 州的减税政策设计?
  • 如果不能直接使用,那么是否可以通过调整后使用?

对上述问题的回答,实际上就是在评价估计结果的外部有效性问题。《基本无害的计量经济学》中有一个例子可以很好说明这个问题。具体来看:

  • 研究一:利用随机抽取的参军资格作为工具变量 IV,来估计越战服役对收入的影响;
  • 研究二:估计志愿参军人员的参军经历对收入的影响。

但是,研究一的估计结果却不能用在研究二中。这是由于两个样本中个体并不相同,即研究一中更接近随机,而研究二中那些志愿参军的人员,可能本身就是收入偏低的劳动人群。

此外,有关「外部有效性」的概念,也可以参考如下文章:

1.2 局部平均处理效应

在工具变量 (IV) 的分析框架中,我们通过引入工具变量来创造一个因果链条:通过工具变量 Z 影响我们感兴趣的变量 D,然后 D 再去影响潜在结果 Y。值得注意的是,IV 估计结果只是局部平均处理效应 (Local Average Treatment Effect,LATE),而非实验处理组所有人的处理效应。

同样以上面参军例子来解释。Z 为随机抽取的资格,D 为是否参军。那么 IV 估计出来的结果,实质上捕捉到的是这样一类人群:如果有参军资格 (Z=1),则参军 (D=1 );如果没有参军资格 (Z=0),则不参军 (D=0 )。在 LATE 框架下,将其称为依从工具变量者 (compliers)。此外,还有以下两类人群,IV 估计结果并不能解释。

  • 一是始终接受者:如果有参军资格 (Z=1),则参军 (D=1),如果没参军资格 (Z=0),还要参军 (D=1);
  • 二是始终不接受者:如果有参军资格 (Z=1),也不参军 (D=0),如果没有参军资格 (Z=0),则不参军 (D=0)。

因此,当依从工具变量者 (compliers) 只占实验人群一部分时,IV 估计出来平均因果效应往往不等于所有 D=1 的人的平均处理效应。同样地,IV 估计出来的未受处理的个体的平均处理效应也不等于所有 D=0 的人的平均处理效应。

1.3 LATE 的外部有效性问题

那么,对于 IV 估计方法,一个需求自然而然就产生了:当随机实验中不只是 compliers 人群时,如何在工具变量局部因果框架下,去估计所有实验组个体的平均因果效应呢?或者说,如何评估该实验中 LATE 的外部有效性呢?

幸运的是,利用异质性因果效应和边际处理效应 (MTE) 的内容,我们在运用工具变量时,能在实现识别内部效度同时,也兼顾外部有效性。更重要的是,不仅可以判断是否 LATE 结果等于全部人群,也能在不相等时,寻找将 LATE 结果外推到全部实验组人群的策略。Kowalski (2016,2018) 便是基于 MTE 的分析框架,以美国 Oregon 州开展的 Oregon Health Insurance Experiment 实验 (以下简称为 Oregon 实验) 为例,分析了 LATE 的外部有效性问题。

同时,作者还编写了两个 Stata 命令 (mtebinarymtemore) 来实现上述操作。其中,mtemoremtebinary 的旧版本,两者输出结果的含义较为相似。因此,本文将着重介绍 mtebinary 的用法。此外还有一个命令 cqiv,同样是关于 IV 估计的异质性分析,也同样涉及到 LATE 效应的外部有效性问题。关于 cqiv 命令的详细介绍,请参考计量经济圈推文「前沿: 删失数据分位数工具变量(CQIV)估计, 做删失数据异质性效应分析」

接下来,本文将从以下四个部分展开介绍:首先介绍 Oregon 实验,并在 LATE 框架下进行刻画;其次介绍 Kowalski (2016,2018) 的识别策略;再次使用 mtebinary 命令以 Oregon 实验为例,分析工具变量法 LATE 效应的外部有效性;最后展示命令 mtemorecqiv 的用法。

2. Oregon 实验简介

在 2008 年,Oregon 州决定将针对低收入人群的公共医疗补助的覆盖范围进行扩张。但由于资金有限,不能将所有低收入人群都纳入医疗补助范围,于是 Oregan 州决定通过抽签的方式,来决定那些在候选名单上的人,以及谁有资格获得医疗补助。据统计,大约有 75000 人进入了候选名单,而最终只有 30000 人获得了申请医疗补助资格。这样,3000 个获得公共医疗补助的人便构成了实验组样本,而剩下的 45000 人则成为对照组。这种抽签方式,相当于创造了一个随机实验,Oregon 实验也因此被认为是随机实验的典范。

Kowalski (2016,2018) 研究了 Oregon 实验对该州急救室使用情况的影响。根据 Oregon 州的规定,即使病人没有保险,州内急救室都不能拒绝对其救治,从而有一部分无保险人群会通过急救室这个渠道获得公共医疗补助。自然,公共医疗补助覆盖人群范围的扩大,会影响到急救室的使用情况。

设定急救室使用情况为 Y2,D 为有关病人是否获得公共医疗补助的指示变量:当 D=1 时表示病人获得医疗补助,当 D=0 时表示病人没有医疗补助。Z 同样为指示变量:当 Z=1 表示抽签成功,获得申请医疗补助的资格,当 Z=0 时表示抽签失败,没有因抽签获得医疗补助资格。显然 Z 可以作为 D 的一个工具变量:一方面抽签的方式保证了 Z 的外生性,另一方面 Z 和 D 显然是相关的。值得注意的是,这里用 Z 作为工具变量来识别出来的处理效应是局部平均处理效应,即只识别了 compliers 这一类人群的处理效应。

然而在 Oregon 实验中,可能存在 compliers、always-takers 和 never-takers 这三类人群。当人们报名参与 Oregon 实验申请医疗补助时,并不需要提供证明他们符合条件的材料 (比如低收入证明),材料只有抽签成功后才被要求提供。这样,

  • 对于 always-takers 而言,总会去报名加入实验,将自己加入候选名单,进入实验的样本集里。当 always-takers 抽签失败 (Z=1) 时,仍有其中一部分人会依据 Oregon 州规定,通过急救室的渠道去享受医疗补助,进入处理组 (D=1);
  • 类似地,对于 never-takers 而言,他们即使抽签成功 (Z=1),也不会申请医疗补助 (D=0)。原因或是他们材料不符合,或是没有在规定时间内提交证明材料。

3. Oregon 实验中 LATE 外部有效性的识别策略

Kowalski (2016,2018) 分析了在 MTE 框架下,当内生变量和工具变量均为二元变量时,如何识别 always-takers 和 never-takers 两类人群对实验平均因果效应的影响。为此,Kowalski 引入了干预概率 (treatment probability) 这个概念。

干预概率是指进入处理组的概率。Kowalski (2016,2018) 的一个核心假设是:个体选择是否要进入处理组,取决于其加入后的预期效用是否大于不加入的预期效用。其又等价于:如果不可观测的加入净成本 (UD) 低于加入的净效用增加,个体选择加入处理组。净效用增加又可表示为个体的预期干预概率:P(D=1|Z=z,X),其中 X 为协变量。进而,我们就可以借用 UD 的概念在同一维度上描述三类人群。

下图为 Kowalski (2018) 给出的示意图。横轴表示 UD,取值为 0 到 1。Always-takers 人群是 UD 特别小,以至总有 P(D=1|Z=z,X)UD>0,从而总会选择加入处理组。Never-takers 人群是 UD 特别大,从而总会选择加入对照组。Compliers 人群的 UD 则介于两者之间。

以 PC 点处为例,只有预期干预概率 (p=0.15) 大于 UD 时,该点处个体才会加入干预组。如图所示,PC 是 always-takers 与 compliers 人群的分界点。同理,PI 是 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 时的实验组与对照组的差异。在以上准备工作的基础上,我们就可以进行正式的分析了。

  • 首先,通过计算 E(D=1,Z=0)E(D=1,Z=1)E(D=0,Z=1)E(D=0,Z=0),就可以计算出 always-takers 的平均实验组结果 (ATOAT)、compliers 人群的平均实验组结果 (ATOC)、和平均对照组结果 (AUOC),以及 never-takers 人群的平均对照组结果 (ATONT)。

  • 其次,加上 MTE 分析框架里经常使用的线性假设,就可以算出 PC/2(PC+PI)/2PI/2 三个点的边际结果。再结合线性假设,就可以连点成线,计算出所有点出的效应。从而实现在二元变量 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 为结果变量,可以是二元、离散或者连续变量;
  • endogvar 为内生变量,必须是二元变量;
  • instrument 为工具变量,必须是二元变量;
  • covariates 为协变量。

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 这三类人群的 agefemale 的统计性质;
  • graphsave (mte) 将图形结果保存名为 mte 的 pdf 文件。

主要回归结果为三个表和两个图,具体来看。

第一个表格为 "Average Characteristics of Always Takers, Compliers and Never Takers",如下所示。其中第一列显示了所有人群的结果,第二列显示了 always-takers 人群的结果,第三列显示了 never-takers 人群的结果,第四列为 always-takers 人群和 compliers 人群的差异,第五列为 compliers 人群和 never-takers 人群的差异。从变量的统计结果,可以计算出 PC=175/500=0.375PI=0.375+125/500=0.625

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 在 [0,PC][PC,PI][PC,1] 三个区间上的期望。

       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)列中 680360=320。我们同样可以用 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)",对应第二个表的结果。观察右图,利用处理效应连续性的假定,对于始终 D=1 的 always Takers,我们也能获得出他的对照组结果 MUO(p) 和处理效应 MTE(p)。而对于始终 D=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]

需要注意的是,mtemorebootstrap 次数不能为 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) 

限于篇幅,mtemorecqiv 命令结果不在一一展示。

6. 参考文献

  • Kowalski A E. Doing 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-

7. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh IV, m
安装最新版 lianxh 命令:
ssc install lianxh, replace

相关课程

免费公开课

最新课程-直播课

专题 嘉宾 直播/回看视频
最新专题 文本分析、机器学习、效率专题、生存分析等
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2小时]
  • Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。

课程主页

课程主页

关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 连享会-主页知乎专栏,400+ 推文,实证分析不再抓狂。直播间 有很多视频课程,可以随时观看。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, $D$ID, PSM, 合成控制法

连享会小程序:扫一扫,看推文,看视频……

扫码加入连享会微信群,提问交流更方便

✏ 连享会-常见问题解答:
https://gitee.com/lianxh/Course/wikis

New! lianxh 命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh