关于复刻Bertrand et al.(2004)“忽略时间序列信息”部分的技术问询
理解Bertrand et al. (2004) 中渐进DID的残差分组步骤
我当年啃Bertrand这篇DID经典的时候也卡在过这个残差分组的部分!先帮你把逻辑拆解开,一步步来:
先回顾前置步骤
你已经理解的第一步:先对 Y_st 做回归:
Y_st = α_s + λ_t + X_stβ + ε_st
这里 α_s 是州固定效应,λ_t 是年份虚拟变量,X_st 是协变量,得到的残差 ε_st 已经剥离了不随时间变化的州特征、全国层面的时间趋势、以及协变量的影响,剩下的就是和政策冲击直接相关的“干净”波动了。
处理组残差分组的核心逻辑
接下来的残差分组,完全是为了落实文章里“忽略时间序列信息”的思路——本质是为了规避传统DID里的序列相关导致标准误低估的问题。具体步骤是:
- 第一步:把样本明确分成处理组(实施了政策的州)和控制组(从未实施政策的州);
- 第二步:只提取处理组的残差,然后按照每个处理州的政策实施时间,把残差拆成两组:
- 第一组:政策实施前的残差——该州在政策生效年份之前所有年份的
ε_st; - 第二组:政策实施后的残差——该州在政策生效年份及之后所有年份的
ε_st;
- 第一组:政策实施前的残差——该州在政策生效年份之前所有年份的
- 第三步:分别计算这两组残差的均值,两者的差值就是一个简化版的处理效应估计(相当于把处理组的“前平均”和“后平均”做对比)。
为什么要这么做?
Bertrand他们的核心担忧是:时间序列数据里的残差往往存在序列相关(比如一个州今年的经济波动和去年高度相关),传统DID的标准误没有考虑这一点,会导致显著性被高估。而通过把每个处理州的时间维度压缩成“前/后”两个点,相当于把长面板变成了一个“短面板”,自然就绕开了序列相关的问题。
举个直观的例子:假设处理组有3个州,A州2000年实施政策,B州2002年,C州2005年:
- A州的前残差是1990-1999年的所有残差,后残差是2000-2010年的所有残差;
- B州的前残差是1990-2001年的所有残差,后残差是2002-2010年的所有残差;
- 把所有处理组的前残差合并成一个集合算均值,所有后残差合并成另一个集合算均值,两者的差就是这篇文章里提到的简化处理效应。
补充:和控制组的关联
后续你还会用到控制组的残差——同样把控制组的残差按对应处理组的政策时间逻辑拆分(或者简化为全样本的“虚拟前/后”分组),计算控制组的前/后均值差,最后用处理组的差减去控制组的差,得到最终的DID估计值。
内容的提问来源于stack exchange,提问作者user196456
相关产品推荐
相关产品推荐

