查看原文
其他

Stata:一文读懂8种DID模型平行趋势检验方法汇总

一文读懂8种DID模型平行趋势检验方法汇总



后面4种方法请继续往下阅读

双重差分法(DID)8种平行趋势方法合集

1、简介

现代计量经济学和统计学的发展为我们的研究提供了可行的工具。倍差法来源于计量经济学的综列数据模型,是政策分析和工程评估中广为使用的一种计量经济方法。主要是应用于在混合截面数据集中,评价某一事件或政策的影响程度。该方法的基本思路是将调查样本分为两组,一组是政策或工程作用对象即“作用组”,一组是非政策或工程作用对象即“对照组”。根据作用组和对照组在政策或工程实施前后的相关信息,可以计算作用组在政策或工程实施前后某个指标(如收入)的变化量(收入增长量),同时计算对照组在政策或工程实施前后同一指标的变化量。然后计算上述两个变化量的差值(即所谓的“倍差值”)。这就是所谓的双重差分估计量(Difference in Differences,简记DD或DID),因为它是处理组差分与控制组差分之差。该法最早由Ashenfelter(1978)引入经济学,而国内最早的应用或为周黎安、陈烨(2005)。

常用的倍差法主要包括双重倍差法和三重倍差法。双重差分法(Difference-in-difference,DID)有几种其他的称谓:倍差法、差分再差分等。该方法的原理非常简单,它要求数据期至少有两期,所有的样本被分为两类:实验组和控制组,其中实验组在第一期是没有受到政策影响,此后政策开始实施,第二期就是政策实施后的结果,控制组由于一直没有受政策干预,因此其第一期和第二期都是没有政策干预的结果。双重差分方法的测算也非常简单,两次差分的效应就是政策效应。

双重差分法的假定,为了使用OLS一致地估计方程,需要作以下两个假定。

假定1:此模型设定正确。特别地,无论处理组还是控制组,其时间趋势项都是。此假定即“平行趋势假定”(parallel trend assumption)。DID最为重要和关键的前提条件:共同趋势(Common Trends)

双重差分法并不要求实验组和控制组是完全一致的,两组之间可以存在一定的差异,但是双重差分方法要求这种差异不随着时间产生变化,也就是说,处理组和对照组在政策实施之前必须具有相同的发展趋势。

假定2:暂时性冲击与政策虚拟变量不相关。这是保证双向固定效应为一致估计量(consist estimator)的重要条件。在此,可以允许个体固定效应与政策虚拟变量相关(可通过双重差分或组内变换消去,或通过LSDV法控制)。

DID允许根据个体特征进行选择,只要此特征不随时间而变;这是DID的最大优点,即可以部分地缓解因 “选择偏差”(selection bias)而导致的内生性(endogeneity)。

2、DID操作案例

Difference in differences (DID) Estimation step‐by‐step双重差分操作步骤

首先我们读入所需数据,生成政策前后以及控制组虚拟变量,并将它们相乘产生交互项。

方法一:

Getting sample data调用数据

use "http://dss.princeton.edu/training/Panel101.dta", clear



Create a dummy variable to indicate the time when the treatment started. Lets assume that treatment started in 1994. In this case, years before 1994 will have a value of 0 and 1994+ a 1. If you already have this skip this step.设置虚拟变量,政策执行时间为1994年

gen time = (year>=1994) & !missing(year) 



*Create a dummy variable to identify the group exposed to the treatment. In this example lets assumed that countries with code 5,6, and 7 were treated (=1). Countries 1-4 were not treated (=0). If you already have this skip this step生成地区的虚拟变量

gen treated = (country>4) & !missing(country)



* Create an interaction between time and treated. We will call this interaction ‘did’ 产生交互项

gen did = time*treated



Estimating the DID estimator随后将这三个变量作为解释变量,y作为被解释变量进行回归:

reg y time treated did, r



结果为:

 . gen time = (year>=1994) & !missing(year) 



. gen treated = (country>4) & !missing(country)



. gen did = time*treated

. reg y time treated did, r

Linear regression                               Number of obs     =         70
                                                F(3, 66)          =       2.17
                                                Prob > F          =     0.0998
                                                R-squared         =     0.0827
                                                Root MSE          =     3.0e+09

------------------------------------------------------------------------------
             |               Robust
           y |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
        time |   2.29e+09   9.00e+08     2.54   0.013     4.92e+08    4.09e+09
     treated |   1.78e+09   1.05e+09     1.70   0.094    -3.11e+08    3.86e+09
         did |  -2.52e+09   1.45e+09    -1.73   0.088    -5.42e+09    3.81e+08
       _cons |   3.58e+08   7.61e+08     0.47   0.640    -1.16e+09    1.88e+09
------------------------------------------------------------------------------

. reg y time treated did, r

Linear regression                               Number of obs     =         70
                                                F(3, 66)          =       2.17
                                                Prob > F          =     0.0998
                                                R-squared         =     0.0827
                                                Root MSE          =     3.0e+09

------------------------------------------------------------------------------
             |               Robust
           y |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
        time |   2.29e+09   9.00e+08     2.54   0.013     4.92e+08    4.09e+09
     treated |   1.78e+09   1.05e+09     1.70   0.094    -3.11e+08    3.86e+09
         did |  -2.52e+09   1.45e+09    -1.73   0.088    -5.42e+09    3.81e+08
       _cons |   3.58e+08   7.61e+08     0.47   0.640    -1.16e+09    1.88e+09
------------------------------------------------------------------------------





did的系数显著为负,表明政策实施对Y有显著的(10%显著性水平下)负效应

方法二:diff

The command diff is user‐defined for Stata,To install type

ssc install diff下载外部命令方法

**diff y, t(treated) p(time)**

结果为:

. diff y, t(treated) p(time)

DIFFERENCE-IN-DIFFERENCES ESTIMATION RESULTS
Number of observations in the DIFF-IN-DIFF: 70
            Before         After    
   Control: 16             24          40
   Treated: 12             18          30
            28             42
--------------------------------------------------------
 Outcome var.   | y       | S. Err. |   |t|   |  P>|t|
----------------+---------+---------+---------+---------
Before          |         |         |         | 
   Control      |  3.6e+08|         |         | 
   Treated      |  2.1e+09|         |         | 
   Diff (T-C)   |  1.8e+09|  1.1e+09| 1.58    | 0.120
After           |         |         |         | 
   Control      |  2.6e+09|         |         | 
   Treated      |  1.9e+09|         |         | 
   Diff (T-C)   | -7.4e+08|  9.2e+08| 0.81    | 0.422
                |         |         |         | 
Diff-in-Diff    | -2.5e+09|  1.5e+09| 1.73    | 0.088*
--------------------------------------------------------
R-square:    0.08
* Means and Standard Errors are estimated by linear regression
**Inference: *** p<0.01; ** p<0.05; * p<0.1



3、双重差分平行趋势检验

在介绍完DID的基本思想和模型设定后,我们再来说说DID的稳健性检验,也就是要想办法证实所有效应确实是由政策实施所导致的。

关于DID的稳健性检验,主要表现在两个方面:

1、共同趋势检验

所谓共同趋势或者平行趋势,是指处理组和控制组在政策实施之前必须具有相同的发展趋势。

如果不满足这一条件,那么两次差分得出的政策效应β就不完全是真实的政策效应,其中有一部分是由处理组和控制组本身的差异所带来的。

平行趋势检验―般有画时间趋势图和事件研究法两种方法。

如果平行趋势假设成立,那么在政策时点之前,处理组和控制组应该不存在显著差异。

画时间趋势图其实是一种比较粗糙的方法,具体做法就是绘制处理组和控制组的y的均值的时间趋势,这种方法简单直观,不能在统计意义上准确地判断处理组和控制组是否存在显著差异。

事件研究法相比画平行趋势图更为准确、更为科学,具体做法就是生成年份虚拟变量YEARj与处理组虚拟变量treati的交互项,加入模型中进行回归(M、N分别表示政策前和政策后的期数),那么交互项treatixYEARj的系数δj衡量的就是第j期处理组和控制组之间的差异。

方法1

首先生成年份虚拟变量与实验组虚拟变量的交互项,此处选在政策前后各3年进行对比。


gen period = year - 1994
forvalues i = 3(-1)1{

gen pre_`i' = (period == -`i' & treated == 1) }
gen current = (period == 0 & treated == 1)
forvalues j = 1(1)3{
gen  time_`j' = (period == `j' & treated == 1)

 }

随后将这些交互项作为解释变量进行回归,并将结果储存在reg中以备后续检验。

xtreg y time treated pre_* current time_* i.year, fe 

est sto reg

结果为:

方法2

采用coefplot命令进行绘图,观察是否1994年前的回归系数均在0轴附近波动,在1994年后回归系数显著为负。

**coefplot reg, keep(pre_\* current post_\*) vertical recast(connect) yline(0) xline(3, lp(dash))**

结果为:

结果发现系数在政策前的确在0附近波动,而政策后一年系数显著为负,但很快又回到0附近。这说明实验组和控制组的确是可以进行比较的,而政策效果可能出现在颁布后一年,随后又很快消失。

方法3

方法4:eventdd

面板事件研究可以在Stata中使用以下命令语法实现:

 eventdd depvar [indepvars] [if] [in] [weight], timevar(varname) [options]

所需的变量表应首先指定感兴趣的因变量,然后是包括固定效应在内的所有控制变量,将其包括在面板事件研究模型中,但不包括滞后和领先,应在回归中输入。

方法选项指定底层模型的估计过程,可以是ols(普通最小二乘)、fe(固定效果)或reghdfe(使用用户编写的reghdfe命令吸收多个固定效果级别)。如果未指定估计方法,则默认使用ols。

在固定效果(fe)或高维固定效果(reghdfe)模型的情况下,固定效果可以被吸收(如下面的选项中讨论),因此不需要在标准varlist语法中输入。在fe的情况下,数据必须首先是Stata中的xtset。基于这种语法,eventdd负责生成所有滞后项和先导项、估计和推断,以及生成事件研究图。

选项含义:

  • Timevar是必需选项。指定的时间变量应该包含一个标准化的值,其中0对应于给定单位中感兴趣的事件发生的时间段,−1表示事件发生前一年,1表示事件发生后一年,以此类推。对于事件未发生的任何单元(纯控件),此变量应包含缺失值。
  • ci(string)是必需的选项,指示命令将生成的图形类型。可用于置信区间的图形类型是rarea(带区域阴影的区间),rcap(带上限峰值的区间)和rline(带直线的区间)。只能指定一种类型,并且所有间隔都是相同的类型。外观可以使用ci_op()进行修改。
  • baseline(#)指定事件研究的参考周期,这是一个被忽略的基线类别,所有其他周期都应该在事件研究输出上与之进行比较。缺省情况下,该值设置为−1。
  • level(#)为置信区间指定置信级别,以百分比表示。默认值是level(95)或根据set level设置。这设置了回归输出中置信区间的水平,以及事件研究图和矩阵。
  • method(type, [absorb(absvars)] * ...)指定估计方法:ols(使用Stata的regress 命令)、fe(使用Stata的xtreg、fe命令)或hdfe(使用用户编写的reghdfe命令),以及任何额外的估计选项和vce选项传递到事件研究模型(如robust 或 clustered估计)。absorb(absvars)子选项只在hdfe选项时需要。ols是默认的估计方法。

eventdd在e()中存储了以下内容:


    Scalars        
      e(baseline)         baseline period specified
      e(level)            confidence level


    Macros         
      e(cmd)              eventdd
      e(cmdline)          command as typed
      e(depvar)           name of dependent variable
      e(wtype)            weight type
      e(clustvar)         name of cluster variable
      e(vce)              vcetype specified in vce()
      e(vcetype)          title used to label Std. Err.
    
    Matrices       
      e(b)                coefficient vector
      e(V)                variance-covariance matrix of the estimators
      e(leads)            all event leads, their lower bound, the point estimate, and their upper bound
      e(lags)             all event lags, their lower bound, the point estimate, and their upper bound
      e(V_leads_lags)     variance-covariance matrix of leads and lags estimators

4、案例应用

我们现在提供了许多实例来说明eventdd的性能,以估计在经验应用中的面板事件研究。

我们使用Stevenson and Wolfers (2006)关于美国无过错离婚改革和女性自杀的数据。这些数据已在其他论文中使用,以证明双向固定效应模型最近进展的功能(见Goodman-Bacon(2018)),并取自在Stata中使用时用于记录此类方法的示例(Goodman -Bacon et al. 2019) 数据由一个平衡面板组成,包括1964年至1996年对49个州的观察,这些州的单方面离婚改革时间不同。所使用的无过错离婚改革中女性自杀的基线双向固定效应DID模型为:

其中

  • asmrs为t时刻s状态下所有女性的自杀率
  • γ为状态固定效应,λ为时间(年)固定效应
  • post为实施无过错离婚改革后的值1
  • ε为随机误差。
  • 协变量包括四口之家的人均收入(pcinc)、他杀死亡率(asmrh)和对有受抚养子女家庭的援助(AFDC)率(病例)。

为了估计出与无过错离婚改革相对应的面板事件研究规范,第一步是创建标准化版本的改革时间变量,假设数据中还没有这样一个变量。特别是在这种情况下,在Stata中创建变量只需要从时间周期t(在数据中称为year)中减去改革周期,称为Events(以及_nfd,在数据中表示“无过错离婚”):

webuse set www.damianclarke.net/stata/

. webuse bacon_example.dta, clear

 (Stevenson and Wolfers (2006) divorce example, provided by Goldring et al.) . 


gen timeToTreat = year - _nfd 

(429 missing values generated)


eventdd命令提供了一个简单的语法,用于生成所有必要的滞后和领先,估计事件研究模型,以及图点估计和置信区间。该命令需要两个选项:timevar(timeToTreat)中的标准化变量,以及置信区间图的类型,例如,我们指定ci(rcap)用于由上限错误条表示的区间。下面我们要求命令安静地运行(qui),但是在本节后面我们记录了一个示例,其中显示完整的回归输出:

 gen timeToTreat = year - _nfd
(429 missing values generated)

.
do "C:\Users\Metrics\AppData\Local\Temp\STD1a40_000000.tmp"

#delimit ;
delimiter now ;
. qui eventdd asmrs pcinc asmrh cases i.year i.stfips, timevar(timeToTreat) ci(rcap) cluster(stfips)graph_op(ytitle("Suicides
>  per 1m Women"
) xlabel(-20(5)25));

#delimit cr
delimiter now cr




 #delimit ;
delimiter now ;
. eventdd asmrs pcinc asmrh cases i.year i.stfips, timevar(timeToTreat) ci(rcap) cluster(stfips)graph_op(ytitle("Suicides per
>  1m Women"
) xlabel(-20(5)25));

Linear regression                               Number of obs     =      1,617
                                                F(47, 48)         =          .
                                                Prob > F          =          .
                                                R-squared         =     0.7212
                                                Root MSE          =     10.808

                                (Std. Err. adjusted for 49 clusters in stfips)
------------------------------------------------------------------------------
             |               Robust
       asmrs |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
       pcinc |  -.0011046   .0004136    -2.67   0.010    -.0019363    -.000273
       asmrh |    1.08064   .6064578     1.78   0.081    -.1387247    2.300006
       cases |  -190.3716   136.6556    -1.39   0.170     -465.136    84.39279
             |
        year |
       1965  |   5.225278   2.119377     2.47   0.017     .9639841    9.486572
       1966  |   2.803378   2.269053     1.24   0.223     -1.75886    7.365615
       1967  |    4.61116   2.338898     1.97   0.054    -.0915108     9.31383
       1968  |   5.596837   2.514211     2.23   0.031     .5416775      10.652
       1969  |   8.574786   3.158377     2.71   0.009     2.224444    14.92513
       1970  |   10.65894   3.821476     2.79   0.008     2.975344    18.34253
       1971  |    17.6067   3.585572     4.91   0.000     10.39743    24.81598
       1972  |    14.0683   4.136396     3.40   0.001     5.751524    22.38509
       1973  |   16.16345   4.772027     3.39   0.001     6.568642    25.75825
       1974  |   17.01009   4.575588     3.72   0.001     7.810252    26.20992
       1975  |   20.48743   4.720196     4.34   0.000     10.99684    29.97802
       1976  |   16.76032    5.32978     3.14   0.003     6.044076    27.47656
       1977  |    18.8125   4.946074     3.80   0.000     8.867751    28.75725
       1978  |   15.53648   5.404453     2.87   0.006     4.670103    26.40286
       1979  |   13.97376   6.075092     2.30   0.026     1.758968    26.18855
       1980  |   11.16642    5.34852     2.09   0.042     .4125048    21.92034
       1981  |   13.86874   5.929315     2.34   0.024     1.947052    25.79043
       1982  |   10.84654   5.143604     2.11   0.040     .5046313    21.18845
       1983  |   10.26562   5.662058     1.81   0.076    -1.118707    21.64996
       1984  |   13.14376   5.892586     2.23   0.030     1.295919     24.9916
       1985  |   9.251855   6.348267     1.46   0.152     -3.51219     22.0159
       1986  |   14.41652   6.246341     2.31   0.025     1.857413    26.97563
       1987  |   15.65435   6.059627     2.58   0.013     3.470651    27.83805
       1988  |   13.44858   6.610391     2.03   0.047     .1574946    26.73966
       1989  |   12.80977   7.303105     1.75   0.086    -1.874109    27.49364
       1990  |   14.06857   7.146289     1.97   0.055    -.3000028    28.43715
       1991  |   13.22049   7.084524     1.87   0.068    -1.023902    27.46488
       1992  |   12.87047   7.475258     1.72   0.092    -2.159543    27.90048
       1993  |   15.34731   7.739088     1.98   0.053    -.2131671    30.90779
       1994  |   15.13629   7.863552     1.92   0.060    -.6744393    30.94702
       1995  |   13.79803   8.179808     1.69   0.098    -2.648576    30.24464
       1996  |   13.98251   8.506622     1.64   0.107      -3.1212    31.08622
             |
      stfips |
          4  |    36.9288   1.924405    19.19   0.000     33.05952    40.79807
          5  |  -4.461478   3.095326    -1.44   0.156    -10.68505    1.762091
          6  |   60.38981   5.349018    11.29   0.000     49.63489    71.14473
          8  |   50.05651   3.608116    13.87   0.000     42.80191    57.31111
          9  |   17.08357   6.756787     2.53   0.015     3.498137      30.669
         10  |    20.5695   5.507517     3.73   0.000     9.495893    31.64311
         11  |   12.56921   7.996852     1.57   0.123     -3.50954    28.64796
         12  |   35.74881   2.233152    16.01   0.000     31.25876    40.23887
         13  |   13.61893   1.454427     9.36   0.000     10.69461    16.54325
         16  |   18.44103   2.264297     8.14   0.000     13.88836    22.99371
         17  |   11.29719   5.409254     2.09   0.042     .4211582    22.17323
         18  |    10.4168   2.696812     3.86   0.000     4.994492     15.8391
         19  |   10.28096   3.304845     3.11   0.003     3.636126     16.9258
         20  |    15.3332   2.936976     5.22   0.000      9.42801    21.23838
         21  |   11.01473   1.716834     6.42   0.000     7.562801    14.46665
         22  |   6.137733   3.045236     2.02   0.049     .0148753    12.26059
         23  |    16.7276   3.137669     5.33   0.000     10.41889    23.03631
         24  |   12.89125   5.953918     2.17   0.035     .9200967     24.8624
         25  |   12.10367   5.718826     2.12   0.040     .6052007    23.60214
         26  |   21.57043   3.800149     5.68   0.000     13.92972    29.21114
         27  |   13.77685   4.183384     3.29   0.002     5.365598    22.18811
         28  |  -5.819917    3.34078    -1.74   0.088    -12.53701    .8971724
         29  |   15.73647   2.563135     6.14   0.000     10.58294    20.88999
         30  |   24.89907   2.293199    10.86   0.000     20.28828    29.50985
         31  |   7.785651   3.439078     2.26   0.028     .8709211    14.70038
         32  |   78.63681   3.694747    21.28   0.000     71.20802     86.0656
         33  |    20.4206   4.235537     4.82   0.000     11.90448    28.93672
         34  |    6.52651   5.834313     1.12   0.269    -5.204163    18.25718
         35  |   30.08897   1.257066    23.94   0.000     27.56147    32.61648
         36  |   4.890387   6.564132     0.75   0.460    -8.307686    18.08846
         37  |   3.285438   3.225977     1.02   0.314    -3.200823    9.771699
         38  |  -.5794964   3.058447    -0.19   0.851    -6.728916    5.569923
         39  |   20.46251   3.613936     5.66   0.000     13.19621    27.72882
         40  |    11.7639   3.582965     3.28   0.002     4.559865    18.96793
         41  |   30.98784   3.101588     9.99   0.000     24.75168      37.224
         42  |   11.86828    4.25983     2.79   0.008      3.30332    20.43325
         44  |   15.73751   4.480252     3.51   0.001     6.729364    24.74567
         45  |    4.63611   .4879704     9.50   0.000      3.65498     5.61724
         46  |   .1719819   3.504933     0.05   0.961    -6.875158    7.219122
         47  |   5.709774   3.396845     1.68   0.099    -1.120042    12.53959
         48  |   16.48494    1.94482     8.48   0.000     12.57461    20.39526
         49  |   11.92987   4.052823     2.94   0.005     3.781118    20.07861
         50  |   14.00645   4.839034     2.89   0.006     4.276916    23.73597
         51  |   9.583616   4.912417     1.95   0.057    -.2934614    19.46069
         53  |    35.6558   4.270496     8.35   0.000     27.06939     44.2422
         54  |    .321997   3.730593     0.09   0.932    -7.178863    7.822857
         55  |    19.1378   3.921319     4.88   0.000     11.25346    27.02214
         56  |   31.20661   3.447895     9.05   0.000     24.27415    38.13907
             |
      lead21 |  -22.92073   4.075373    -5.62   0.000    -31.11481   -14.72664
      lead20 |  -12.08418   11.17267    -1.08   0.285    -34.54834    10.37998
      lead19 |   8.842727   6.053351     1.46   0.151    -3.328351    21.01381
      lead18 |  -.5159513   4.753964    -0.11   0.914    -10.07444    9.042533
      lead17 |  -4.434874   6.310563    -0.70   0.486    -17.12311    8.253363
      lead16 |  -1.022577   3.651244    -0.28   0.781    -8.363896    6.318742
      lead15 |   .8477567   4.262787     0.20   0.843     -7.72315    9.418664
      lead14 |   4.327995   5.301677     0.82   0.418     -6.33174    14.98773
      lead13 |  -1.388568   4.708948    -0.29   0.769    -10.85654    8.079407
      lead12 |  -.0434501   7.023583    -0.01   0.995    -14.16531    14.07841
      lead11 |  -9.381948   4.044052    -2.32   0.025    -17.51306   -1.250836
      lead10 |  -1.150666   5.011109    -0.23   0.819    -11.22618    8.924843
       lead9 |  -5.000702   3.645503    -1.37   0.177    -12.33048    2.329073
       lead8 |   -2.73765   3.965503    -0.69   0.493    -10.71083    5.235528
       lead7 |  -1.256434    4.40995    -0.28   0.777    -10.12323    7.610363
       lead6 |  -.7505582   3.038754    -0.25   0.806    -6.860382    5.359266
       lead5 |  -2.775423   2.662771    -1.04   0.302    -8.129282    2.578436
       lead4 |   .2283574   2.435786     0.09   0.926    -4.669119    5.125834
       lead3 |  -2.312587   3.017688    -0.77   0.447    -8.380055    3.754881
       lead2 |  -.5157397   2.555229    -0.20   0.841    -5.653371    4.621892
        lag0 |   .2507466   2.765789     0.09   0.928    -5.310244    5.811737
        lag1 |  -1.619351   2.988699    -0.54   0.590    -7.628534    4.389831
        lag2 |  -1.687107   3.960678    -0.43   0.672    -9.650584     6.27637
        lag3 |  -.7444709   2.908468    -0.26   0.799    -6.592338    5.103396
        lag4 |  -2.956354   2.878044    -1.03   0.309    -8.743049    2.830342
        lag5 |  -2.377841   2.798907    -0.85   0.400     -8.00542    3.249739
        lag6 |  -3.311888   3.625365    -0.91   0.366    -10.60117    3.977398
        lag7 |  -5.136502    3.45649    -1.49   0.144    -12.08624    1.813237
        lag8 |  -6.991146   3.135858    -2.23   0.031    -13.29621   -.6860805
        lag9 |   -4.82321   3.139015    -1.54   0.131    -11.13462    1.488201
       lag10 |  -8.814158   3.733515    -2.36   0.022    -16.32089   -1.307423
       lag11 |   -7.27331   3.689987    -1.97   0.054    -14.69253    .1459062
       lag12 |  -6.151559    4.15508    -1.48   0.145    -14.50591    2.202789
       lag13 |  -8.276837    4.00952    -2.06   0.044    -16.33852   -.2151567
       lag14 |  -6.593221   3.929278    -1.68   0.100    -14.49356    1.307121
       lag15 |  -7.850839   4.136105    -1.90   0.064    -16.16703     .465356
       lag16 |  -7.234422   4.339311    -1.67   0.102    -15.95919    1.490348
       lag17 |  -8.516898   4.413931    -1.93   0.060     -17.3917    .3579043
       lag18 |  -9.991582   3.819046    -2.62   0.012    -17.67029   -2.312876
       lag19 |  -11.53613   3.923685    -2.94   0.005    -19.42523   -3.647036
       lag20 |  -9.219165   4.574047    -2.02   0.049     -18.4159   -.0224257
       lag21 |  -10.79088   4.488696    -2.40   0.020    -19.81601   -1.765756
       lag22 |  -10.65478   4.682235    -2.28   0.027    -20.06905   -1.240518
       lag23 |  -12.08658   5.376989    -2.25   0.029    -22.89774   -1.275415
       lag24 |  -10.67796   6.246086    -1.71   0.094    -23.23655    1.880642
       lag25 |  -10.26777   7.578635    -1.35   0.182    -25.50564    4.970098
       lag26 |  -16.69255   10.71136    -1.56   0.126    -38.22919    4.844089
       lag27 |  -.4344752    8.27773    -0.05   0.958    -17.07797    16.20902
       _cons |   56.23195   5.941966     9.46   0.000     44.28483    68.17908
------------------------------------------------------------------------------

#delimit cr
delimiter now cr

end of do-file

该命令存储所有事件延迟、它们的下界、点估计和上界。例如,如果我们希望可视化整个滞后集的估计,以及它们的上置信区间和下置信区间,我们可以简单地检查返回的滞后矩阵:

. mat list e(lags)

e(lags)[28,4]
            Lag          LB         Est          UB
 r1           0  -5.3102441   .25074664   5.8117375
 r2           1  -7.6285343  -1.6193515   4.3898311
 r3           2  -9.6505833  -1.6871067     6.27637
 r4           3  -6.5923381  -.74447083   5.1033964
 r5           4  -8.7430496  -2.9563539   2.8303416
 r6           5  -8.0054207  -2.3778408   3.2497389
 r7           6  -10.601172  -3.3118875   3.9773974
 r8           7  -12.086242  -5.1365023    1.813237
 r9           8  -13.296212  -6.9911461  -.68608052
r10           9  -11.134622  -4.8232102   1.4882015
r11          10  -16.320892  -8.8141575  -1.3074229
r12          11  -14.692526  -7.2733097   .14590624
r13          12  -14.505907  -6.1515589   2.2027895
r14          13  -16.338516  -8.2768364  -.21515673
r15          14  -14.493564  -6.5932212   1.3071214
r16          15  -16.167034  -7.8508396   .46535599
r17          16  -15.959191  -7.2344217   1.4903481
r18          17  -17.391701  -8.5168982   .35790426
r19          18  -17.670288  -9.9915819   -2.312876
r20          19   -19.42523  -11.536133  -3.6470358
r21          20  -18.415903  -9.2191648  -.02242574
r22          21  -19.816011  -10.790884  -1.7657557
r23          22  -20.069046  -10.654782   -1.240518
r24          23  -22.897739  -12.086576  -1.2754151
r25          24  -23.236555  -10.677957   1.8806419
r26          25  -25.505636  -10.267769   4.9700985
r27          26  -38.229191  -16.692551   4.8440886
r28          27  -17.077967  -.43447518   16.209017


检验领先和滞后的联合显著性。

. estat eventdd

使用野蛮自举法检验领先和滞后的联合显著性。

 estat eventdd, wboot seed(1303)

结果为:

. estat eventdd
                                       
      Joint significance test for
           leads and lags
----------------------------------------
                LEADS
----------------------------------------
F-stat:                   31.1251
P-value:                   0.0000
Degrees of freedom        (20,48)
----------------------------------------
                 LAGS
----------------------------------------
F-stat:                    4.0011
P-value:                   0.0000
Degrees of freedom        (28,48)
----------------------------------------


5、论文应用

下面以《专利质押、融资约束与企业劳动雇佣》为例讲解一下如何使用该命令进行平行趋势检验。

政策背景:专利质押融资试点政策是研究专利质押影响企业劳动雇佣的一个良好的准自然实验。本文借助于专利质押融资试点政策的外生冲击,采用广义双重差分法,检验专利质押对企业劳动雇佣的影响。

变量介绍:

  • 其中,被解释变量Y为企业劳动雇佣规模,用企业员工人数取自然对数进行度量。企业高技术水平员工规模,用企业技术人员取自然对数进行度量。

  • 主要解释变量 Policy 为专利质押融资试点政策施行与否的虚拟变量。当上市公司所在地区为知识产权质押融资试点地区且时间为政策颁布的下一年及以后时,Policy 取1,否则取0。

  • 控制变量向量X中包括企业层面和地区层面的控制变量。

  • 企业层面控制变量主要包括企业规模(Size)、资产负债室(Ler)、资产收益率(Roa)以及股权性质(Soe)。

  • 地区层面控制变量主要包括地级市人均GDP(P_CDP)、地级市第二产业比重(Second_ind)。λ和n分别表示企业和年度固定效应。我们对企业层面进行了聚类,以控制整个样本期内企业层面的任意结构依存性。

6 DID 双重差分模型

**# 3、基准回归分析--**********3.1基准回归-表3**********(P8页)

   use 数据, clear
   xtset code year
   qui xtreg Labor Policy  i.year,fe vce(cluster code)    // 不带控制变量 //
   est store m1
   qui xtreg Labor Policy $c i.year ,fe vce(cluster code)
   est store m2
   qui xtreg Hlabor Policy  i.year ,fe vce(cluster code)
   est store m3
   qui xtreg Hlabor Policy $c  i.year ,fe vce(cluster code)
   est store m4
   
   lxhreg m1 m2 m3 m4   using 基准回归结果1.rtf, replace t(%13.3f) b(%13.3f) drop( *year* )

结果为:

7 平行趋势检验

采用双重差分法的前提是,实验组与控制组在专利质押融资试点政策施行前企业的劳动雇佣规模、高技术水平员工规模的趋势是保持平行的,若政策试点前的趋势不平行,则政策试点后的趋势也可能不平行,从而导致有偏的结果。由于政策试点在在多个时期,本文借鉴 Clarke 和Tapia-Schythe(2021)、Barrios(2021)的思路,利用当前处理交错型 DID 的较为新颖的事件研究法(Event Study Method)检验政策的动态处理效应。

绘制平行趋势检验图的命令为:

**# 4、**********3.2 DID有效性检验与其他稳健性测试**********

************平行趋势检验-图2******
   use 数据,clear
   xtset code year
   replace Policy_year=. if Policy_year==0
   gen yeardif=year-Policy_year
   
   xtset code year
     eventdd Labor $c i.year, timevar(yeardif) method(fe) cluster(code) level(95)  baseline(0)  ///
     graph_op( yline(0,lcolor(edkblue*0.8) ) ///
     xlabel(-6 "- 6" -5 "- 5" -4 "- 4" -3 "- 3"  -2 "-2"  -1 "-1"  0 "0"  1 "1"  2 "2"   3 "3"  4 "4" 5 "5" 6 "6") ///
     ylabel(-0.1(0.1)0.4,format (%7.1f))   ///
   xline(0 ,lwidth(vthin) lpattern(dash) lcolor(teal)) ///
    xtitle(`"{fontface "宋体": 政策时点}"', size(medium small)) /// 
    ytitle(`"{fontface "宋体": 回归系数}{stSerif: (Labor)}"'
, size(medium small)) ///
    legend(order(2 `"{fontface "宋体": 回归系数}"' 1 "95% confidence interval" ))  scheme(s1mono))
    
    
    graph export "平行趋势Labor.png", replace
 
 
    eventdd Hlabor $c i.year, timevar(yeardif) method(fe) cluster(code) level(95)  baseline(0)  ///
     graph_op( yline(0,lcolor(edkblue*0.8) ) ///
     xlabel(-6 "- 6" -5 "- 5" -4 "- 4" -3 "- 3"  -2 "-2"  -1 "-1"  0 "0"  1 "1"  2 "2"   3 "3"  4 "4" 5 "5" 6 "6") ///
     ylabel(-0.2(0.2)1,format (%7.1f))   ///
   xline(0 ,lwidth(vthin) lpattern(dash) lcolor(teal)) ///
    xtitle(`"{fontface "宋体": 政策时点}"'
, size(medium small)) /// 
    ytitle(`"{fontface "宋体": 回归系数}{stSerif: (HLabor)}"', size(medium small)) ///
    legend(order(2 `"{fontface "宋体": 回归系数}"'
 1 "95% confidence interval" ))  scheme(s1mono))
    
    
    graph export "平行趋势HLabor.png", replace 

结果为:

图1:平行趋势Labor.png

图2:平行趋势HLabor.png

结果解释:图2绘制了在95%置信水平的专利质押融资政策试点的平行趋势图。图平行趋势Labor.png表明,在专利质押政策实施前,试点地区与非试点地区的劳动雇佣并不存在显著差异,而政策试点对劳动雇佣的影响出现在政策实施一年及以后。图平行趋势HLabor.png显示,专利质押政策出台前,试点地区与非试点地区的高技术水平员工规模并不存在显著差异,在政策实施后,企业高技术员工规模的增长存在一定持续性。以上结果支持了平行趋势假设。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存