美文网首页stata stata学习DID模型
Stata: 双重差分的固定效应模型 (DID)

Stata: 双重差分的固定效应模型 (DID)

作者: stata连享会 | 来源:发表于2017-12-28 17:46 被阅读8369次

    作者:张伟广 | 知乎 | 简书 | 码云

    Stata 现场培训报名中……


    双重差分法(DID)作为估计处理效应的工具方法,常被用来对政策实施的跨期效果进行评估,其本身也是一种固定效应估计方法。在不同应用情形下,该方法具有多种可供选择的回归命令,而由于有些应用者对双重差分模型设定的优点和缺陷,以及 stata 命令实现不够了解,使得该方法有被错误滥用的倾向。

    在此借鉴参考 Using Stata to estimate difference-in-differences models with fixed effects by Nicholas Poggioli (poggi005@umn.edu) ,举例从混合回归、 areg 回归、面板回归的随机效应和固定效应等情形,给出正确和错误模型设定的对比,以期为双重差分模型估计命令的正确选择作参考。

    简要回顾双重差分模型的设定形式:

    DID模型设定 1

    模型(1)为双重差分模型的基本设定。其中, Gi 为分组虚拟变量(处理组=1,控制组=0); Dt 为分期虚拟变量(政策实施后=1,政策实施前=0);交互项 Gi*Dt 表示处理组在政策实施后的效应,其系数即为双重差分模型重点考察的处理效应。

    DID模型设定 2

    模型(2)是加入个体固定效应 (ui)、时间固定效应(λt),以及其它控制变量(Xit)的双重差分模型设定的一般形式。

    下面,我们通过一份模拟数据来对比分析不同估计方法的效果和偏误。

    1.生成数据

    • 生成企业数量
    set obs 400
    gen firm=_n
    
    • 时间跨度设定为24个季度(6年)
    expand 24
    bysort firm: gen t=_n
    
    • 设定事件冲击发生在第14期
    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"
    

    2.验证模型

    处理效应设定交互项系数为0.56

    gen y = .3 + .19*i + 1.67*d + .56*i*d + e
    

    2.1 混合回归

    • 错误设定模型
    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
    ----------------------------------------------------------------------------
    

    这一设定忽略了交互项,对 id 的估计验证有偏。

    reg y i d, robust
    
    ----------------------------------------------------------------------------
               |               Robust
             y |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    -----------+----------------------------------------------------------------
             i |   .4349154   .0208446    20.86   0.000     .3940555    .4757753
             d |   1.902249   .0207964    91.47   0.000     1.861483    1.943014
         _cons |    .192176   .0168581    11.40   0.000     .1591307    .2252214
    ----------------------------------------------------------------------------
    
    reg y i d, cluster(firm)
    
    ----------------------------------------------------------------------------
               |               Robust
             y |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    ---------+----------------------------------------------------------------
             i |   .4349154   .0211226    20.59   0.000     .3933899    .4764408
             d |   1.902249   .0239605    79.39   0.000     1.855144    1.949353
         _cons |    .192176   .0181038    10.62   0.000     .1565853    .2277668
    ----------------------------------------------------------------------------
    
    

    稳健标准差和对企业聚类方法对有偏估计并没有矫正。

    • 正确设定模型
    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
           1.i |          0  (omitted)
           1.d |          0  (omitted)
               |
           i#d |
          1 1  |   .5684342   .0413982    13.73   0.000     .4872851    .6495834
               |
         _cons |   .3087643   .0187486    16.47   0.000     .2720131    .3455154
    ----------------------------------------------------------------------------
    
    

    此时对交互项的估计、对 id 的估计都是接近参数的真实值的。

    2.2 areg回归

    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
           1.i |          0  (omitted)
           1.d |          0  (omitted)
               |
           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)
    

    2.3面板回归

    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, fe robust
    
    ----------------------------------------------------------------------------
               |               Robust
             y |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    -----------+----------------------------------------------------------------
             i |          0  (omitted)
             d |   1.902249   .0239592    79.40   0.000     1.855146    1.949351
         _cons |   .3868007   .0109813    35.22   0.000     .3652122    .4083891
    -----------+----------------------------------------------------------------
       sigma_u |  .30216053
       sigma_e |  1.0138689
           rho |  .08157474   (fraction of variance due to u_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
           1.i |          0  (omitted)
           1.d |          0  (omitted)
               |
           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
           1.i |          0  (omitted)
           1.d |          0  (omitted)
               |
           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 也随企业发生变化。

    2.4 结果输出对比

    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
    
    

    关于我们

    联系我们

    • 欢迎赐稿: 欢迎将您的文章或笔记投稿至Stata连享会(公众号: StataChina),我们会保留您的署名;录用稿件达五篇以上,即可免费获得 Stata 现场培训 (初级或高级选其一) 资格。
    • 意见和资料: 欢迎您的宝贵意见,您也可以来信索取推文中提及的程序和数据。
    • 招募英才: 欢迎加入我们的团队,一起学习 Stata。合作编辑或撰写稿件五篇以上,即可免费获得 Stata 现场培训 (初级或高级选其一) 资格。
    • 联系邮件: StataChina@163.com

    Stata 现场培训报名中

    连玉君Stata现场班报名中

    Stata连享会二维码

    相关文章

      网友评论

      • Johndo:请问连老师何时可以介绍一下DDID
        stata连享会:@Johndo 不错的建议,我找个小伙伴介绍一下。不知你有没有兴趣一起做这个介绍性推文?我的邮箱是:arlionn@163.com
      • 贼娃子:介绍有些太简略了,只是对估计方法做了简要说明,对该方法适用范围、注意事项等没有提及啊
        stata连享会:@贼娃子 你可以发邮件给我,我诚挚地邀请你加入连享会编辑团队。我的邮箱是:arlionn@163.com
        贼娃子:@stata连享会 谢谢连老师,我也是stata的学习者,也是您的粉丝,如果有什么我可以帮上忙的,我很乐意参与到学习中来。
        stata连享会:@贼娃子 这篇只是模拟分析,对比不同的方法的估计效果。后续可以作一篇完整的,不知您是否有兴趣分享,一起来做。

      本文标题:Stata: 双重差分的固定效应模型 (DID)

      本文链接:https://www.haomeiwen.com/subject/pgvvgxtx.html