本文结构
- 原理:事件研究法的模型设定
- 直觉:动态效应的经济学含义
- 代码:完整 Stata 实现与标准系数图
第一层:原理
事件研究模型
- :处理指示变量的 leads 和 lags
- :第 期的动态处理效应
- 基准期(通常 )被省略,
系数解读
- (leads/处理前):应接近零(平行趋势)
- :即时效应
- (lags/处理后):滞后效应
第二层:直觉
事件研究法回答的问题是:处理效应是否随时间变化?
在政策评估中,这至关重要:
- 最低工资政策可能短期无影响但长期降低就业
- 环境规制可能立即提高成本但逐渐带来创新收益
系数图(coefficient plot)是呈现这一动态过程的标准可视化工具。
第三层:Stata 代码
// ═══════════════════════════════════════════════
// 事件研究法完整实现
// ═══════════════════════════════════════════════
clear all
set seed 98765
local N = 200
local T = 20
local treat_time = 10
set obs `=`N'*`T''
gen id = ceil(_n/`T')
bysort id: gen t = _n
gen treat = (id > `=`N'/2')
// 动态处理效应
gen tau = 0
replace tau = 0.5*(t - `treat_time' + 1) if treat & t >= `treat_time'
gen y = 2 + 0.1*t + tau + rnormal(0, 1)
// 事件时间
gen rel_time = t - `treat_time'
// 生成虚拟变量
tab rel_time if treat, gen(D)
// 省略基准期 rel_time = -1
reghdfe y D*, absorb(id t) cluster(id)
coefplot, vertical drop(_cons) ///
yline(0) xline(9.5, lpattern(dash) lcolor(red)) ///
title("事件研究:动态处理效应") ///
xtitle("相对时期") ytitle("系数估计")参考文献
- Sun, L., & Abraham, S. (2021). Estimating Dynamic Treatment Effects in Event Studies with Heterogeneous Treatment Effects. Journal of Econometrics, 225(2), 175-199.
- Borusyak, K., Jaravel, X., & Spiess, J. (2024). Revisiting Event-Study Designs. Review of Economic Studies.