温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。
作者:张伟广
目录
双重差分法(DID
)作为估计处理效应的工具方法,常被用来对政策实施的跨期效果进行评估,其本身也是一种固定效应估计方法。在不同应用情形下,该方法具有多种可供选择的回归命令,而由于有些应用者对双重差分模型设定的优点和缺陷,以及 stata
命令实现不够了解,使得该方法有被错误滥用的倾向。
在此借鉴参考 Using Stata to estimate difference-in-differences models with fixed effects by Nicholas Poggioli (poggi005@umn.edu)
,举例从混合回归、 areg
回归、面板回归的随机效应和固定效应等情形,给出正确和错误模型设定的对比,以期为双重差分模型估计命令的正确选择作参考。
简要回顾双重差分模型的设定形式:
模型(1)为双重差分模型的基本设定。其中,
模型(2)是加入个体固定效应 (
下面,我们通过一份模拟数据来对比分析不同估计方法的效果和偏误。
set obs 400
gen firm=_n
expand 24
bysort firm: gen t=_n
gen d=(t>=14)
label var d "=1 if post-treatment"
gen r=rnormal()
qui sum r, d
bysort firm: gen i=(r>=r(p50)) if _n==1
bysort firm: replace i=i[_n-1] if i==. & _n!=1
drop r
label var i "=1 if treated group, =0 if untreated group"
gen e = rnormal()
label var e "normal random variable"
处理效应设定交互项系数为 0.56
gen y = 0.3 + 0.19*i + 1.67*d + 0.56*i*d + e
. reg y i d
Source | SS df MS Number of obs = 9600
-----------+------------------------------ F( 2, 9597) = 4406.07
Model | 9073.16808 2 4536.58404 Prob > F = 0.0000
Residual | 9881.26843 9597 1.02962055 R-squared = 0.4787
-----------+------------------------------ Adj R-squared = 0.4786
Total | 18954.4365 9599 1.97462616 Root MSE = 1.0147
----------------------------------------------------------------------------
y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-----------+----------------------------------------------------------------
i | .4349154 .0208277 20.88 0.000 .3940888 .475742
d | 1.902249 .0207848 91.52 0.000 1.861506 1.942991
_cons | .192176 .0168782 11.39 0.000 .1590912 .2252609
----------------------------------------------------------------------------
这一设定忽略了交互项,此时
i
和d
的 OLS 的估计都是有偏估计。即使考虑异方差稳健性标准误或在企业层面进行聚类调整后的标准误,也不会改变其有偏性。因此,使用reg y i d, robust
或reg y i d, vce(cluster firm)
是无济于事的。
. reg y i d i.i#i.d
. eststo pooled
----------------------------------------------------------------------------
y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-----------+----------------------------------------------------------------
i | .174383 .0280267 6.22 0.000 .1194448 .2293213
d | 1.647874 .0276935 59.50 0.000 1.593589 1.702159
i#d |
1 1 | .5684342 .0413982 13.73 0.000 .4872851 .6495834
_cons | .3087643 .0187486 16.47 0.000 .2720131 .3455154
----------------------------------------------------------------------------
此时对交互项的估计、对
i
和d
的估计都是接近参数的真实值的。
. areg y i d i.i#i.d, absorb(firm)
. eststo areg
----------------------------------------------------------------------------
y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-----------+----------------------------------------------------------------
i | 0 (omitted)
d | 1.647874 .0276586 59.58 0.000 1.593657 1.702091
i#d |
1 1 | .5684342 .041346 13.75 0.000 .4873869 .6494815
_cons | .3868007 .0139183 27.79 0.000 .3595177 .4140837
-----------+----------------------------------------------------------------
firm | F(399, 9198) = 1.156 0.019 (400 categories)
连享会计量方法专题……
. xtset firm t, quarter
. xtreg y i d
----------------------------------------------------------------------------
y | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-----------+----------------------------------------------------------------
i | .4349154 .0212192 20.50 0.000 .3933266 .4765042
d | 1.902249 .0207677 91.60 0.000 1.861545 1.942953
_cons | .192176 .0170907 11.24 0.000 .1586789 .2256731
-----------+----------------------------------------------------------------
sigma_u | .04121238
sigma_e | 1.0138689
rho | .00164959 (fraction of variance due to u_i)
-----------------------------------------------------------------------------
. xtreg y i d, fe
----------------------------------------------------------------------------
y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-----------+----------------------------------------------------------------
i | 0 (omitted)
d | 1.902249 .0207677 91.60 0.000 1.861539 1.942958
_cons | .3868007 .0140598 27.51 0.000 .3592403 .4143611
-----------+----------------------------------------------------------------
sigma_u | .30216053
sigma_e | 1.0138689
rho | .08157474 (fraction of variance due to u_i)
------------------------------------------------------------------------------
此时
i
不能被估计,因为在面板数据中的企业代码是不随时间变化的。更为核心的问题在于:没有包含交乘项!
. xtreg y i d i.i#i.d
. eststo xtreg_re
------------------------------------------------------------------------
y | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------+----------------------------------------------------------------
i | .174383 .0284493 6.13 0.000 .1186234 .2301427
d | 1.647874 .0276586 59.58 0.000 1.593664 1.702084
i#d |
1 1 | .5684342 .041346 13.75 0.000 .4873976 .6494709
_cons | .3087643 .0190313 16.22 0.000 .2714636 .3460649
-------+----------------------------------------------------------------
sigma_u | .05056003
sigma_e | 1.003664
rho | .00253126 (fraction of variance due to u_i)
------------------------------------------------------------------------
该随机效应模型与正确设定的混合回归模型产生了一致的估计结果。
. xtreg y i d i.i#i.d, fe
. eststo xtreg_fe
------------------------------------------------------------------------
y | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------+----------------------------------------------------------------
i | 0 (omitted)
d | 1.647874 .0276586 59.58 0.000 1.593657 1.702091
i#d |
1 1 | .5684342 .041346 13.75 0.000 .4873869 .6494815
_cons | .3868007 .0139183 27.79 0.000 .3595177 .4140837
-------+----------------------------------------------------------------
sigma_u | .22793566
sigma_e | 1.003664
rho | .0490464 (fraction of variance due to u_i)
------------------------------------------------------------------------
F test that all u_i=0: F(399, 9198) = 1.16 Prob > F = 0.0194
该固定效应模型对交互项和变量
d
的估计结果一致,但对变量i
的估计则被忽略,因为其并不随面板代码而发生变化;
随机效应模型能够估计出变量
i
,因为该模型能够包含企业变化,且i
也随企业发生变化。
estout *, title("Actual parameter values are i = .19, d = 1.67, and i*d = .56") ///
cells(b(star fmt(%9.3f)) se(par)) ///
stats(N N_g, fmt(%9.0f %9.0g) label(N Groups)) ///
legend collabels(none) varlabels(_cons Constant) keep(i d 1.i#1.d)
--------------------------------------------------------------------
pooled areg xtreg_re xtreg_fe
--------------------------------------------------------------------
i 0.174*** 0.000 0.174*** 0.000
(0.028) (.) (0.028) (.)
d 1.648*** 1.648*** 1.648*** 1.648***
(0.028) (0.028) (0.028) (0.028)
1.i#1.d 0.568*** 0.568*** 0.568*** 0.568***
(0.041) (0.041) (0.041) (0.041)
--------------------------------------------------------------------
N 9600 9600 9600 9600
Groups 400 400
--------------------------------------------------------------------
* p<0.05, ** p<0.01, *** p<0.001
连享会-直播课 上线了!
http://lianxh.duanshu.com
免费公开课:
直击面板数据模型 - 连玉君,时长:1小时40分钟 Stata 33 讲 - 连玉君, 每讲 15 分钟. 部分直播课 课程资料下载 (PPT,dofiles等)
支持回看,所有课程可以随时购买观看。
专题 | 嘉宾 | 直播/回看视频 |
---|---|---|
⭐ 最新专题 ⭐ | DSGE, 因果推断, 空间计量等 | |
⭕ Stata数据清洗 | 游万海 | 直播, 2 小时,已上线 |
研究设计 | 连玉君 | 我的特斯拉-实证研究设计,-幻灯片- |
面板模型 | 连玉君 | 动态面板模型,-幻灯片- |
面板模型 | 连玉君 | 直击面板数据模型 [免费公开课,2小时] |
Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。
关于我们
课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法
等
连享会小程序:扫一扫,看推文,看视频……
扫码加入连享会微信群,提问交流更方便
✏ 连享会学习群-常见问题解答汇总:
✨ https://gitee.com/arlionn/WD