Stata:多期倍分法 (DID) 详解及其图示

发布时间:2019-12-11 阅读 3385

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

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

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

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

作者:张远远 (北京大学)
E-mail:yyzhangfin@pku.edu.cn


目录


连享会·倍分法(DID) 专题推文 https://www.lianxh.cn/blogs/39.html

背景介绍

经济学家在评估某项政策或事件的处理效应时,常使用反事实框架,将受到处理 (处理组) 的数据 (实际可观测到),与假如未受到处理的数据 (反事实),之间的差异称为"处理效应"。由于未受到处理的数据是反事实的,并不能被实际观测到,因此常寻找各个方面都与处理组相似的、未受到处理的控制组,作为处理组的反事实的替代,处理组前后变化与控制组前后变化之差为"处理效应"。

在估计处理效应时,如果处理组仅有一个被处理对象,使用 合成控制法 (Synthetic Control Method,简记 SCM)。如果处理组有多个被处理对象,使用倍分法 / 双重差分法 (Difference in differences,简记 DID 或 DD) ,如果被处理时间是同一时间点,使用 传统 DID;如果被处理时间是不同时间点,使用多期 DID。

DID 是估计处理效应中应用最广泛的计量方法。该方法的思想最初是由医学家 John Snow (1855) 年研究伦敦的霍乱流行时提出的,由 Obenauer 和 von der Nienburg (1915) 研究最小工资法的影响效应时引入经济学。为估计处理效果,比较处理后与处理前的差异,利用处理组的前后变化减去控制组的前后变化,就是处理效应,故名"双重差分"。DID 需要满足的前提假设是,处理组与控制组在未受到处理前必须具有相同的变化趋势,这就是"平行趋势"或"共同趋势"假设。

如果检验发现满足共同趋势假设,则可以直接采用 DID 方法;如果检验发现不满足共同趋势假设,需要使用基于倾向得分匹配法的双重差分法 (PSM-DID)。PSM-DID 的基本思想是,在总的控制组中使用 PSM 方法构造出一个与处理组具有共同趋势的控制组,即在总的控制组中选择与处理组具有相同或相似倾向得分值的样本,作为处理组的实际使用的控制组,使得处理组与控制组满足共同趋势假设。

本文主要的关注点是处理时间点不一致的处理效应的估计方法,即多期 DID,主要分三部分内容进行介绍:

  • 1 模型介绍
  • 2 模型估计及 Stata 实现
  • 3 图示处理前后各期的处理效应及检验平行趋势假设

1. 模型介绍

1.1 传统 DID 模型

DID 使用了面板数据,估计面板数据的最常用的模型是双向固定效应模型,对于面板模型的设定,可以参考连享会之前的推文 Stata: 面板数据模型-一文读懂。在双向固定效应模型的基础上,传统 DID 模型加入了处理组虚拟变量 (treati) 与处理期虚拟变量 (postt) 的交乘项,模型设定如下:

其中,yi,t 为因变量;i (i=1, N) 表示个体;t (t=1,,T) 表示时间;μi 表示个体固定效应;λt 表示时间固定效应;xi,t 表示随时间和个体变化的控制变量;β 是控制变量的系数; ϵi,t 为模型误差项。

treati 为处理组虚拟变量,若个体 i 属于受到政策冲击 (这里以估计政策实施效果为例进行说明) 的"处理组",则取值为 1;若个体 i 属于未受到政策冲击的"控制组",取值为 0。postt 为处理期虚拟变量,处理组的个体也只有到了处理期才会受到政策冲击 (之前未受到冲击) ,若个体 i 进入处理期取值为 1;否则,取值为 0。

值得注意的是,模型中不需要加入处理组虚拟变量 treati,是因为模型中加入了个体固定效应 μiμi 包含更多信息,是控制了个体层面不随时间变化的特征,而 treati 仅控制了组别层面不随时间变化的特征,若二者同时加入会产生多重共线性问题。同样的,模型中也不需要加入处理期虚拟变量 postt,因为模型中加入了时间固定效应 λtλt 包含更多的信息,是控制了每一期的时间效应,而 postt 仅控制了处理期前后的时间效应,若二者同时加入会产生多重共线性问题。

交乘项的系数 θ 是我们关心的处理效应。系数 θ 为:

上式的含义是处理组前后变化与控制组前后变化之差,就是处理效应。

下面通过一个包含3个个体,5期的面板数据,展示一下处理组虚拟变量 treati,处理期虚拟变量 postt 以及交乘项 treati×postt 的取值。处理组包括受到政策冲击的个体 1 和 个体 2,政策冲击发生在 2003 年;控制组包括未受到政策冲击的个体 3。

id  year treati    postt treati*postt
--------------------------------------
1    2001    1      0         0
1    2002    1      0         0
1    2003    1      1         1
1    2004    1      1         1
1    2005    1      1         1
--------------------------------------
2    2001    1      0         0
2    2002    1      0         0
2    2003    1      1         1
2    2004    1      1         1
2    2005    1      1         1
--------------------------------------
3    2001    0      0         0
3    2002    0      0         0
3    2003    0      0         0
3    2004    0      0         0
3    2005    0      0         0

1.2 多期 DID 模型

传统 DID 假定处理组的所有个体开始受到政策冲击的时间点均完全相同,但是会出现处理组个体接受处理时间点不一致的情况,比如美国银行分支机构的放松管制政策在不同的州推出的时间不一致。多期DID (Time-varying DID),也被称为多时点DID或异时DID,就是描述个体的处理期时间点不完全一致的情况,将上述 (1) 式中的 postt 替换为 posti,t,即处理期的时间点因个体  i 而异。模型如下:

交乘项的系数 θ 是我们关心的整体的平均处理效应。系数 θ 为:

上式的含义是处理组前后变化与控制组前后变化之差,就是平均处理效应。

上述模型中的交乘项 treati×posti,t,与表示个体 i 在第 t 期接受处理的虚拟变量 Di,t 等价。因此,多期 DID 模型也可以设定如下:

其中,Di,t 表示因个体而异的处理期虚拟变量,若个体 i 在第 t 期接受处理,代表进入处理期,则此后时期均取值为1;否则,取值为0。

同样的,虚拟变量 Di,t 的系数 θ 是我们关心的整体的平均处理效应。Di,t 的系数为:

下面仍然通过一个包含3个个体,5期的面板数据,展示一下处理组虚拟变量 treati,处理期虚拟变量 posti,t ,交乘项 treati×posti,t 以及个体异质性的处理期虚拟变量 Di,t 的取值。个体 1 的政策冲击发生在 2003 年,个体 2 的政策冲击发生在 2004 年,个体 3 始终没有受到政策冲击。

id    year treati postit treati*postit Dit
----------------------------------------------
1    2001    1      0          0        0
1    2002    1      0          0        0
1    2003    1      1          1        1
1    2004    1      1          1        1
1    2005    1      1          1        1
----------------------------------------------
2    2001    1      0          0        0
2    2002    1      0          0        0
2    2003    1      0          0        0
2    2004    1      1          1        1
2    2005    1      1          1        1
----------------------------------------------
3    2001    0      0          0        0
3    2002    0      0          0        0
3    2003    0      0          0        0
3    2004    0      0          0        0
3    2005    0      0          0        0

1.3 包含处理前后各期效应的多期 DID 模型

上述模型 (2) 和模型 (3) 中的系数 θ 是处理后整体的平均处理效应。多期 DID 通常涉及处理前后多期,为考察处理期前后各期的处理效应,需要看处理前后各期的情况;为检验多期DID是否满足共同趋势假设,往往需要看处理前的情况。模型设定如下:

其中,θ+τ 表示处理之前的 τ 期产生的影响,θ+τ 表示处理之后的 τ 期产生的影响。θ 表示处理当期产生的影响,因此当年份为处理当期时,Di,t 取值为1,否则取值为0。

假设对于每个个体来说,在时间范围 [tm,t+q],处理只发生一次,那么可能的处理情况表示如下:

在两个可能的结果值 yit(wj) 和 yit(wk) 之间的平均处理效应可以表示为:

那么,虚拟变量 Dit+h 的系数为:θh=ATEhc=E(yit|wh)E(yit|wc)=(YhCh)(YbeforeCbefore)

θm=ATEm,c=(YmCm)(YbeforeCbefore) 

θ2=ATE2,c=(Y2C2)(YbeforeCbefore)

θ1=ATE1,c=(Y1C1)(YbeforeCbefore)

θ0=ATE0,c=(Y0C0)(YbeforeCbefore)

θ+1=ATE+1,c=(Y+1C+1)(YbeforeCbefore)

θ+2=ATE+2,c=(Y+2C+2)(YbeforeCbefore) 

θ+q=ATE+q,c=(Y+qC+q)(YbeforeCbefore)

而我们关注的平均处理效应 ATT,并不是各期虚拟变量的系数,而是:

ATTm=(YmCm)(Y0C0)=θmθ0  ATT2=(Y2C2)(Y0C0)=θ2θ0 ATT1=(Y1C1)(Y0C0)=θ1θ0 ATT+1=(Y+1C+1)(Y0C0)=θ+1θ0 ATT+2=(Y+2C+2)(Y0C0)=θ+2θ0  ATT+q=(Y+qC+q)(Y0C0)=θ+qθ0

而由于政策冲击前总的处理效应为 0,因此有: ATTm++ATT2+ATT1=0

因此,