Stata:多处理时点效应估计的Bacon分解-bacondecomp

发布时间:2022-01-05 阅读 12558

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

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

New! lianxh 命令发布了:
随时搜索推文、Stata 资源。安装:
. ssc install lianxh
详情参见帮助文件 (有惊喜):
. help lianxh
连享会新命令:cnssc, ihelp, rdbalance, gitee, installpkg

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

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

⛳ Stata 系列推文:

PDF下载 - 推文合集

作者:杜静玄 (雪城大学)
邮箱jdu115@syr.edu

编者按:本文主要摘译自下文,特此致谢!
Source:Andrew Goodman-Bacon, 2021 , Difference-in-differences with variation in treatment timing,Journal of Econometrics, 225: 254-277. -Link- -PDF-


目录


1. 简介

标准的 DID 通常用来估计处理组与控制组在处理前后的结果差异,然而在实践中,由于处理往往发生在不同的时间点上,研究者通常使用下式估计处理效应 βDD

其中,αi 为截面个体效应,αt 为时间固定效应,Dit 为个体 i 在 t 时刻是否接受处理哑变量。但事实上,我们对于这种不同时点的处理效应理解有很大局限性,且通常依赖于 “条件于群组与时间固定效应,干预应当近似于随机分配” 的一般假定。Andrew Goodman-Bacon (2021) 提出,双向固定效应估计量 (TWFEDD) 等于数据中所有可能的两组或两期 DD 估计量的加权平均值。

其估计的因果解释需要平行趋势假设和随时间恒定的处理效应,他展示了如何分解两个规范之间的差异,并提供了对包含时变控制模型的新分析。本文将简要概述这篇文章,并介绍基于这一分解方法的 Stata 命令 bacondecomp

2. 理论、假设与识别

2.1 基本理论

假定一个拥有 T 期 (t),N 个截面观测值 (i) 的平衡面板。该面板根据处理时间不同而被分为三组:

  • 早处理组 k,他们在 ti=k 的时点就接受了处理;
  • 晚处理组 l,他们在 ti=l>k 的时点才接受处理;
  • 未处理组 U,其处理时间可表示为 ti=+

k 组所占的样本份额为 nki1{ti=k}/N。其接受处理时间所占比例为 D¯ki1{tk}/T。在处理时点 a 之后的某一时刻 b,其结果变量的均值为 y¯bpost(a)=1T(a1)aT[iyit1{ti=b}i1{ti=b}]

根据 FWL 定理,βDD=C^(yit,Dit)~)V^D=1NTityitD~it1NTitD~it2。其中 x~it 是经过固定效应调整之后的变量。对于这样三组,我们可以分为四种情况进行讨论:早处理组 k 与未处理组 U;晚处理组 l 与未处理组 U;早处理组 k 与晚处理组 l;最后一组又可进一步根据处理时间差异,分别将晚处理组与早处理组作为控制组进行划分,具体如下式所示:

其中,MID(k,l) 表明在时点 k 与 l 之间的时间段,为后两式进行比较的关键 (总有一组被处理,而另一组没有)。详细情况可参考下图:

定理 1 (DID 分解定理):假设数据集有 k=1,2,...K 个根据他们接受处理的时点 k(1,T] 进行排序的组,同时也许会存在一个从未接受处理的组 U,则 OLS 估计值 β^DD 是以下所有可能的 2×2 DD 估计值的加权平均:

其中权重分别为:

其中 nj 为该组在总样本中占比,且满足 kUskU+kUl>k[sklk+skll]=1。定理 1 完整描述了在 TWFEDD 估计量中识别变异的来源及其重要性,同时也表明权重的差别来源于:(1) 每个子样本的不同占比;(2) 处理的异质性;(3)两者皆有。采用 Oaxaca-Blinder-Kitagawa 分解则可以解释每一种原因导致的系数变化占比。

2.2 识别与系数解释

将组 k 在时间段 W 内接受的平均处理效应表示为:

W 在实践中通常代表在 2×2 形式中处理后的时间段。将未处理组的平均潜在结果随时间的差异定义为:

经过一系列分解计算后,可将总效应表示为:

其中第一项为可以估计的可解释因果效应,即被处理者的方差加权平均处理效应 (variance-weighed average treatment effect on the treated),它是处理组以及处理期之后在 2×2 DD中构成 β^DD 的平均处理效应的正加权平均值。

第二项为方差加权的共同趋势 (variance-weighted common trends,VWCT),它将 2×2 中的共同趋势一般化为含有时间差异的设定。与前者类似,VWCT 是使用分解定理中的权重对时间组对和不同时间段之间反事实趋势差异的平均值,它捕获了差异趋势映射到 β^DD 中的偏差的方式。

最后一项则等于每个处理组在较晚的处理时间前后的处理效果变化加权总和。TWFEDD 的估计值可根据处理效应的不同分为以下几种情况讨论:

  • 当处理效应为常数时,ATTk(W)=ATTΔATT=0VWATT=ATT。此时 DD 给出的是根据方差加权的 ATT;
  • 当处理效应不随时间变化,但在个体间不同时:ATTk(W)=ATTk,且 ΔATT=0。该情况下 DD 识别的是 VWATT=kUATTkwkT,权重等于组 k 可被作为处理组的所有项分解权重之和,也决定了误差的大小。一般来说,在中间时间段被处理的组最为重要,开头或结尾被处理的更适合被当做参照组,同时也容易造成向下偏误;
  • 处理效应随时间变化但个体间相同:这种情况下,由于ΔATT0,处理效应本身将个体置于不同的变化趋势上,将 “转移者” 与 “已处理者” 进行比较是有偏的——后者并非好控制组,因为结果变量里已经包含了处理效应。如果该类平均估计量权重较大,会较大程度影响 TWDDFE 的估计与解释,如果不太大,则可以作为该估计量的一种稳健性检验。

此外,先前的分析都是基于不同时点处理组之间反事实趋势相同的假设,而当 ΔATT=0 时,仅需要 VWCT=0 即可。

3. Stata 范例

文章复制了 Stevenson 和 Wolfers (2006) 关于单方面离婚改革和女性自杀的分析。 单方面离婚允许任何一方结束婚姻并依此重新分配财产权。他们使用 1969 年至 1985 年 37 个州中由于采用单方面离婚法的时间不同而导致的自然变化,以及剩余的 14 个州作为对照来评估该改革对女性自杀率的影响。

首先,安装该命令,并使用自带数据集:

. ssc install bacondecomp, replace
. use http://pped.org/bacon_example.dta, clear

数据已经设定好了面板格式,可直接进行双向固定面板效应估计:

. xtreg asmrs post pcinc asmrh cases i.year, fe robust

其中,asmrs 为自杀死亡率,post 表示实行改革以后,pcinc 为人均收入,asmrh 则为他杀死亡率,case 为该地区某年抚养未成年儿童家庭援助计划的数量。

从数据中可以看出,不同的地区执行该政策的时间是不同的,因此可以采用该文中提供的分解方法,将所有区域分为 14 个不同时点的处理组,其中包含 1 个永久处理组和 1 个从不处理组。

. bacondecomp asmrs post pcinc asmrh cases, stub(Bacon_) robust
Computing decomposition across 14 timing groups
including an always-treated group and a never-treated group
------------------------------------------------------------------------------
       asmrs | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
        post |     -2.516      2.283    -1.10   0.270       -6.991       1.959
------------------------------------------------------------------------------

Bacon Decomposition
+---------------------------------------------------+
|                      |         Beta   TotalWeight |
|----------------------+----------------------------|
|        Timing_groups |  2.602167327   .3776606651 |
|      Always_v_timing |  -7.02043576   .3783086972 |
|       Never_v_timing | -5.256988806   .2389229013 |
|       Always_v_never |  330.3884583   .0000180736 |
|               Within |   80.0123291   .0050896627 |
+---------------------------------------------------+

此外,该命令在默认情况下还为所有比较生成一个图表,最多显示三种类型的两组/两期比较,它们因对照组而异:

  • 时间组,或在不同时间接受处理可以作为彼此的对照组,并可按照之前所述的两种方式进行比较:较晚处理者为较早治疗组的对照组,较早处理者为较晚处理组的对照组;
  • 分析开始前处理的一组作为对照组;
  • 未接受处理的组为对照组。

并且,该图还显示了由于始终处理和未处理组之间的对照差异而导致的分量,以及 “组内” 残余分量。

从结果中可以看出,双向固定效应的 DD 估计量 -2.516 是不同组别的加权总和。其中不同处理时间带来的差异占据了总效应的 37.766%,而同组内的差异占比为 0.509%,一直接受处理与从未接受处理组的效应仅占 0.0018%。最后,尽管该命令还提供了 DD 效应的详细分解,但目前只能够支持不含其它控制变量与权重调节的情况。在此仅对于关键自变量 post 进行回归。

. bacondecomp asmrs post , ddetail
Calculating treatment times...
Calculating weights...
Estimating 2x2 diff-in-diff regressions...

Diff-in-diff estimate: -3.080   

DD Comparison              Weight      Avg DD Est
-------------------------------------------------
Earlier T vs. Later C       0.111          -0.187
Later T vs. Earlier C       0.265           3.512
T vs. Never treated         0.240          -5.331
T vs. Already treated       0.384          -7.044
-------------------------------------------------
T = Treatment; C = Control

该分解可以将结果详细地分为上文中所讲的四组。其中新处理组与已处理组权重最大,达到 0.384,若处理效应随时间而变量,则该估计量很可能有偏。

4. 相关推文

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

相关课程

免费公开课

最新课程-直播课

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

课程主页

课程主页

关于我们

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

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

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

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

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