DID会固定年份吗_倍分法DID详解 (三):多时点 DID (渐进DID) 的进一步分析

作者:王昆仑 (天津大学)
E-mail: shawn0513@163.com

连享会专题课程:DSGE 模型及应用
b90b4fbffbd9f5d2c4c08169befda566.png
连享会 DSGE 专题课程

这是连享会「倍分法(DID)专题推文」系列的第三篇文章。前两篇文章分别对多种 DID 模型的估计,平行趋势的检验以及政策的动态效果的展示,通过模拟的方式给出了较为详尽的解答。

具体而言,在第一篇推文「连享会-倍分法DID详解 (一):传统 DID」中,我们对具有相同政策时点的 标准倍分法 (Standard DID) 模型进行了详细的介绍,第二篇推文「倍分法DID详解 (二):多时点 DID (渐进DID)」又对政策时点存在差异,实验组个体又不断变动的 时变倍分法 (Time-varying DID) 模型进行了系统的介绍。

本文作为本系列的第三篇文章,我们继续使用同一套数据结构,利用模拟的方法将 Standard DID 和 Time-varying DID 方法统一到一起,继续分析关于 Time-varying DID 方法剩下的一些待解决的问题。

本系列的推文

连享会-倍分法DID详解 (一):传统 DID

倍分法DID详解 (二):多时点 DID (渐进DID)

倍分法DID详解 (三):多时点 DID (渐进DID) 的进一步分析 (本文)

1. 引言

本文讨论的背景依然是 Time-varying DID 模型,为了解决当政策干预的时点和群体不断发生变化时,Standard DID 的交互项设置会导致估计系数有偏的问题。在「倍分法DID详解 (二):多时点 DID (渐进DID)」 的末尾,我们提出了如果样本中存在一直处于控制组的个体,那么 Time-varying DID 模型的设置又是否会发生的问题。由于政策效果是否随时间变化不会改变我们的分析,出于行文简洁的考虑,本文中我们就以政策效果随时间发生变化的情况来对上述的问题进行解答。

2.  Time-varyig DID Simulation: 政策效果随时间发生改变

2.1 模拟数据的生成

再次仿照 「连享会-倍分法DID详解 (一):传统 DID」 生成基础的数据结构,依然为60个体*10年=600个观察值的平衡面板数据。本文的 Time-varying DID 设置为, id 编号为 1-20 的个体在 2004 年接收政策干预,编号 21-40 的个体在 2006 年接受干预,编号为 41-60 一直不接受干预。因此,三组个体接受政策干预的时长分别为 6 年,4 年和 0 年。

///设定60个观测值,设定随机数种子
. clear all
. set obs 60
. set seed 10101
. gen id =_n

/// 每一个数值的数量扩大11倍,再减去前六十个观测值,即60*11-60 = 600,为60个体10年的面板数据
. expand 11
. drop in 1/60
. count

///以id分组生成时间标识
. bys id: gen time = _n+1999
. xtset id time

///生成协变量以及个体和时间效应
. gen x1 = rnormal(1,7)
. gen x2 = rnormal(2,5)

. sort time id
. by time: gen ind = _n
. sort id time
. by id: gen T = _n
. gen y = 0

///生成处理变量,此时D为Dit,设定1-20在2004年接受冲击,21-40为2006年,41-60个体一直不接受干预

. gen D = 0
. gen birth_date = 0
. gen G = 0

forvalues i = 1/20{
replace D = 1 if id == `i' & time >= 2004
replace birth_date = 2004 if id == `i'
replace G = 1 if id == `i'
}

forvalues i = 21/40{
replace D = 1 if id == `i' & time >= 2006
replace birth_date = 2006 if id == `i'
replace G = 2 if id == `i'
}

///将基础数据结构保存成dta文件,命名为DID_Basic_Simu.dta,默认保存在当前的 working directory 路径下

save "DID_Basic_Simu_2.dta", replace

生成结果变量,设定接受干预个体的政策效果当年为 3,且每年增加 3。利用固定效应模型消除个体效应和 x1、x2 两个变量对结果变量的影响,得到残差,画出更加干净分组的结果变量的时间趋势图。这个图形可以作为具有平行趋势的一个旁证。

///调用生成的基础数据文件
use "DID_Basic_Simu_2.dta", clear

///Y的生成,设定真实的政策效果为当年为3,并且每年增加3
bysort id: gen y0 = 10 + 5*x1 + 3*x2 + T + ind + rnormal()
bysort id: gen y1 = 10 + 5*x1 + 3*x2 + T + ind + (time - birth_date + 1) * 3 + rnormal() if time >= 2004 & id >= 1 & id <= 20
bysort id: replace y1 = 10 + 5*x1 + 3*x2 + T + ind + (time - birth_date + 1) * 3 + rnormal() if time >= 2006 & id >= 21 & id <= 40
bysort id: replace y1 = 10 + 5*x1 + 3*x2 + T + ind + rnormal() if y1 == .

replace y = y0 + D * (y1 - y0)

///去除个体效应和协变量对Y的影响,得到残差并画图
xtreg y x1 x2 , fe r
predict e, ue
binscatter e time, line(connect) by(G)

///输出生成的图片,令格式为800*600
graph export "article_3.png", as(png) replace width(800) height(600)

2c209b48ebf336cc318355833a2dce72.png
图3

2.2 多种估计结果的展示

依然使用双向固定效应(Two-Way Fixed Effects)的方法进行估计,使用reg,xtreg,areg,reghdfe等四个Stata命令进行估计。在本文中,主要展示命令 'reghdfe'的输出结果,该命令的具体介绍可以参考 Stata: reghdfe-多维固定效应。四个命令的比较放在了下方的表格中。

此处依然使用双向固定效应 (two-way fixed effects) 方法估计交互项的系数,其中用到 reg, xtreg, areg, reghdfe 等多个 Stata 命令。在本文中,主要展示命令 reghdfe 的输出结果,该命令的具体介绍可以参考 Stata: reghdfe-多维固定效应。四个命令的比较放在了下方的表格中。

reg xtreg areg reghdfe
个体固定效应 i.id xtreg,fe areg,absorb(id) absorb(id time)
时间固定效应 i.time i.time i.time absorb(id time)
估计方法 OLS 组内去平均后OLS OLS OLS
优点 命令熟悉,逻辑清晰 固定效应模型的官方命令 官方命令,可以提高组别不随样本规模增加的估计效率 高维固定效应模型,可以极大提到估计效率,且选项多样,如支持多维聚类
缺点 运行速度慢,结果呈现过多不太需要的固定效应的结果 需要手动添加时间固定效应 需要手动添加时间固定效应

. reghdfe y c.D x1 x2, absorb(id time) vce(robust)
+-----------------------------------------------------------------------------+
(converged in 3 iterations)

HDFE Linear regression Number of obs = 600
Absorbing 2 HDFE groups F( 3, 528) = 46468.92
Statistics robust to heteroskedasticity Prob > F = 0.0000
R-squared = 0.9972
Adj R-squared = 0.9969
Within R-sq. = 0.9963
Root MSE = 2.3658
+-----------------------------------------------------------------------------+
| Robust
y | Coef. Std. Err. t P>t [95% Conf. Interval]
+-----------------------------------------------------------------------------+
D | 6.9331
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值