查看原文
其他

Stata倍分法新趋势:did2s-两阶段双重差分模型

连享会 连享会 2023-10-24

🍎 连享会主页:lianxh.cn

「十年口碑,桃李三千」
🎦 2021 Stata 暑期班
📅 2021 年 7 月 20-30 日
🔑 连玉君(中山大学);江艇 (中国人民大学)
🍓 课程主页https://gitee.com/lianxh/PX

New! lianxh 命令发布了:   GIF 动图介绍
随时搜索 Stata 推文、教程、手册、论坛,安装命令如下:
. ssc install lianxh

作者:胡文涛 (中国人民大学)
邮箱:hwtxwhr@163.com

编者按:本文主要摘译自下文,特此致谢!
Source:Gardner, John. 2021. Two-Stage Difference-in-Differences. Working Paper. -PDF-


目录

  • 1. 背景介绍

  • 2. 双重差分回归估计问题

  • 3. 两阶段双重差分

    • 3.1 两阶段双重差分估计量

    • 3.2 事件法研究

    • 3.3 统计推断

  • 4. Stata 实操

    • 4.1 did2s 命令

    • 4.2 具体案例

  • 5. 结语

  • 6. 参考资料

  • 7. 相关推文



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

   

1. 背景介绍

最近一系列文献都表明,当处理组个体接受处理的时间是交错的,而且平均处理效应随着组别以及时间发生变化时,常见的双重差分估计就不能识别一个典型处理效应并做出合理的度量 (Borusyak and Jaravel, 2017; Athey and Imbens, 2018; Goodman-Bacon, 2018; de Chaisemartin and D’Haultfoeuille, 2020; Imai andKim, 2020; Sun and Abraham, 2020)。

为此,本文将介绍可能缓解上述问题的方法——两阶段双重差分。具体地,本篇推文主要分为以下内容:

  • 首先,提供了一些简单的直觉来解释为什么双重差分回归不能确定 group period 平均处理效应;
  • 其次,提出了一个可供选择的二阶段 GMM 估计框架 (two-stage estimation framework)。在这个框架中,我们在第一阶段识别组别效应和时期效应,在移除了组别效应和时期效应之后,在第二阶段,通过比较处理组和对照组的结果差异来识别平均处理效应。两阶段方法对于被处理的时间是交错的以及处理效应具有异质性的情况下估计结果是稳健的,而且还能够用来识别许多不同的平均处理效应,方法简单直接好用;
  • 最后,为了方便大家理解,我们用实例并结合 Stata 操作来演示该方法的实现,其中重点介绍 did2s 命令。

2. 双重差分回归估计问题

考虑一个常见的DID模型,如下列式子:

其中, 表示的是个体, 表示的时间 (一般指的是年),关键是 。如果个体 处于 group0,则意味着它在所有时期 内都不接受处理,如果个体 处于 group1 则意味着 从第一期 (=1) 开始接受处理,以此类推。 分别表示组别和时期的固定效应。

考虑一个只有两期的 DID,运用 DID 方法的一个前提是满足平行趋势假设,即处理组与对照组在处理前要具有共同的时间趋势变化。在处理之前处理组和对照组之间的差异可以分为固定的组别差异以及相同的时间趋势变化 (),而这两个差异可以通过组间与组内双重差分予以消除,在剔除这两个差异之后,处理组与对照组之间的差异就表现为处理的效果。同时,

但是,如果是交错 DID (或称为渐进、多时点 DID, staggered DID) 常见的双重差分估计就不能识别一个典型处理效应并做出容易解释的度量。从上式的一个直观理解是,如果是交错 DID,那么 就是一个随接受处理时间和组别变化的值,那么 就不为0,上述双重差分的估计系数不能简单解释为政策效应,最后估计出来的系数本质上是每个群组每一时期效果的加权平均。

下面来具体看看交错 DID 的估计量,可用下式直观表示,具体可以参考 De Chaisemartin and D’Haultfoeuille (2020),以下简称为 DecDh(2020):

从上式可以直观看到,我们估计的交错 DID 系数是 ATE(, ) 的加权平均,而且权重大小与受接受处理的时间长短、组别的规模大小具有正相关的关系。DecDh (2020) 对此有非常详细的说明与解释,在该文所讨论的情形不仅适用于本文所讨论的交错 DID,还扩展到更一般的情形,即政策实施后,还有可能有些群体或个体由干预状态退出又回到控制组的情形。作者还提供了估计该估计量的两个 Stata 软件包:fuzzydid 和 did_multiplegt。有兴趣的读者可以去进一步去了解,就不在本文中进行详细介绍。本文重点介绍的是通过两阶段方法来处理交错 DID 回归。

3. 两阶段双重差分

3.1 两阶段双重差分估计量

前面也提到了,两阶段双重差分的原理是先识别组别效应和时期效应,然后在第二阶段将其剔除后,再对处理变量进行回归。两阶段双重差分顾名思义将估计分为两个阶段:

第一阶段,估计一个无处理结果 () 的双向固定效应模型:

可得,

第二阶段,从观察数据中消除组别效应与时期效应,所得余值与处理变量回归,如下式:

条件期望表达式,如下式:

如果进一步考虑到处理的持续期 ,有些个体可能提前结束处理,上述表达式可以进一步写为:

3.2 事件法研究

两阶段估计方法同样可以应用于事件法研究,方法原理是一样的,对于一个事件研究:

与一般的双重差分模型一样,第一阶段先估计 ,不同的是第二阶段用 ,..., ,..., 回归。

3.3 统计推断

第二阶段的估计量 来源于第一阶段,我们需要对第二阶段的标准误进行调整。第二阶段估计的渐近分布可以通过将两阶段过程解释为联合 GMM 估计量来获得 (Hansen, 1982)。下面为 Stata 具体实现的命令:

*其中y是结果变量,year是年份,id表示组,d表示处理状态
gmm (eq1: (y - {xb: i.year} - {xg: ibn.id})*(1-d)) ///
(eq2: y - {xb:} - {xg:} - {delta}*d), ///
instruments(eq1: i.year ibn.id) ///
instruments(eq2: d) winitial(identity) ///
onestep quickderivatives vce(cluster id)

4. Stata 实操

4.1 did2s 命令

did2s 命令是根据 Gardner and John (2021) 方法进行编写的。

*命令安装
net install did2s, from(http://fmwww.bc.edu/RePEc/bocode/d)
*命令语法
did2s depvar [if] [in] [weight], ///
first_stage(varlist) ///
treat_formula(varlist) ///
treat_var(varname) ///
cluster_var(varname}) ///
[nboot(50)]
  • depvar:被解释变量;
  • first_stage(varlist):第一阶段公式,包括用于估计 的固定效应和协变量,不能放入处理变量;
  • treat_formula(varlist):第二阶段公式,varlist 放入处理变量,这些处理变量可以是 0、1 表示处理与否的虚拟变量,也可以是事件研究中提前\滞后变量,或者是连续的处理变量;
  • treat_var(varname):这个必须设定为 0、1 类型的处理变量。其中 0 表示没有接受处理,1 表示接受处理;
  • cluster_var(varname}):为 bootstrap 产生的样本选择聚类变量,如果不想聚类的话,可以直接填入 id;
  • nboot(real):可以设置 bootstrap 抽样次数,默认 50 次。

4.2 具体案例

下面,我们通过一个实例,来演示 did2s 具体估计的情况。


. net get did2s, from(http://fmwww.bc.edu/RePEc/bocode/d)
. use df_het.dta, clear

. *手动计算 (注意这种方式得出来标准差有问题需要调整)
. qui reg dep_var i.state i.year if treat == 0, nocons // 第一阶段回归
. predict adj, residuals //得到去除地区、年度固定效应的结果变量
. reg adj i.treat, cluster(state) nocons //第二阶段回归

Linear regression Number of obs = 31,000
F(1, 39) = 2787.70
Prob > F = 0.0000
R-squared = 0.3776
Root MSE = 1.7506

(Std. Err. adjusted for 40 clusters in state)
------------------------------------------------------------------------------
| Robust
adj | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
1.treat | 2.380 0.045 52.80 0.000 2.289 2.471
------------------------------------------------------------------------------
. *利用did2s进行估计
. did2s dep_var, first_stage(i.unit i.year) second_stage(i.treat) ///
treatment(treat) cluster(state)
(Std. Err. adjusted for clustering on state)
------------------------------------------------------------------------------
| Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
1.treat | 2.266 0.036 62.90 0.000 2.195 2.336
------------------------------------------------------------------------------
. *事件研究模型
. did2s dep_var, first_stage(i.unit i.year) second_stage(i.treat) ///
> treatment(treat) cluster(state)
(Std. Err. adjusted for clustering on state)
------------------------------------------------------------------------------
| Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
1.treat | 2.266 0.036 62.90 0.000 2.195 2.336
------------------------------------------------------------------------------

Note:由于该命令仍处于完善阶段,不免会有诸多问题,更多详细介绍请参考「did2s_stata」和「did2s_r」。

5. 结语

交错或者说多时点 DID 的系数估计和处理效果的解释,是目前 DID 方法最前沿的话题之一。本文首先对由于交错情况的存在而对 DID 系数估计和解释产生的影响做了一些简单直观的说明。然后,提出了通过两阶段估计来获得稳健且更加合理的 DID 系数估计值的方法,并着重介绍了该方法的原理、以及结合具体数据对此进行了分析。如果还想对此有更加深入的了解,可以阅读本文提出有关交错 DID 的一系列文献。

6. 参考资料

  • Baker A, Larcker D F, Wang C C Y. How Much Should We Trust Staggered Difference-In-Differences Estimates?[J]. Available at SSRN 3794018, 2021. -PDF-
  • De Chaisemartin C, d'Haultfoeuille X. Two-way fixed effects estimators with heterogeneous treatment effects[J]. American Economic Review, 2020, 110(9): 2964-96. -PDF-
  • Gardner, John. 2021. Two-Stage Difference-in-Differences. Working Paper. -PDF-

7. 相关推文

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

  • 专题:Stata命令
    • DIDM:多期多个体倍分法-did_multiplegt
  • 专题:倍分法DID
    • 多期DID文献解读:含铅汽油与死亡率和社会成本-L113
    • tfdiff:多期DID的估计及图示
    • 多期DID之安慰剂检验、平行趋势检验
    • Big Bad Banks:多期 DID 经典论文介绍
    • 多期DID:平行趋势检验图示
    • Stata:多期倍分法 (DID) 详解及其图示
    • 倍分法DID详解 (二):多时点 DID (渐进DID)
    • 倍分法DID详解 (三):多时点 DID (渐进DID) 的进一步分析

🍎 🍏 🍎 🍏
🎧 暑期 空间计量专题
📅 2021 年 8 月 21-24 日
🔑 范巧 (兰州大学);杨海生 (中山大学)
🍓 课程主页https://gitee.com/lianxh/SP

关于我们

  • 🍎 连享会 ( 主页:lianxh.cn ) 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 👉 直达连享会:百度一下:连享会】即可直达连享会主页。亦可进一步添加 主页,知乎,面板数据,研究设计 等关键词细化搜索。
连享会主页  lianxh.cn

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


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

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