• Index

PSM-DID多期数据

Reads: 54644 Edit

经典psm-did方法(两期数据)有坚实的理论基础,但是由于处理前只有1期数据,因而在使用中受到较大限制。更多的现实问题要求处理前和处理后有多期数据。然而,如果直接将经典psm-did方法应用于多期数据,可能会造成估计偏差,并且目前多期数据psm-did方法也缺乏完善的理论证明!

虽然缺乏严格的理论证明,不过也有许多学者探索了多种处理多期数据psm-did的处理方法,且在国内外的权威期刊中已经得到应用。

1 多期数据psm-did模型的应用

1.1 数据

我们已“传统DID-多期数据”中的例子来演示。这里我们进一步采用PSM-DID方法来研究,由于采用PSM对处理组和对照组进行了匹配,所以能够消除样本的选择偏差,使估计更加准确。

1.2 录入数据

打开数据编辑窗口,将数据从Excel中复制到Stata,注意粘贴时选择“将第一行作为变量名”

stata-172

1.3 数据整理

护港通在2014年开通,但是有些上市企业在2015年、2016年..才逐渐成为沪港通标的。传统did模型主要是比较政策执行年2014年前后的变化,所以在其他年份逐渐成为沪港通标的的上市企业会造成干扰,所以需要将其删除!

删除干扰数据:

g temp=1 if 沪港通2014=="是" && 沪港通2015=="是" && 沪港通2016=="是" && 沪港通2017=="是"
replace temp=0 if 沪港通2014=="否" && 沪港通2015=="否" && 沪港通2016=="否" && 沪港通2017=="否"
drop if temp==.
drop temp

转换为面板数据布局:

reshape long 资产总计 资产负债率 流动比率 总资产周转率 roe 沪港通,i( 证券代码 ) j(year)

由于沪港通仅针对上交所的股票,所以需要删除深交所的股票:

g temp=substr( 证券代码,8,2)
drop if temp=="SZ"
drop temp

变量变换:

encode 证券代码,g(id)
g lnage=ln(year-成立年)
rename 资产总计 asset
g lnasset=ln(asset)
rename 资产负债率 debt
rename 流动比率 liquit
rename 总资产周转率 turnover
rename 沪港通 hgt

1.4 did数据处理

生成时间变量:

g time=0
replace time=1 if year>=2014

生成处理效应变量:

g temp=1 if hgt=="是"
bys id: egen treated=sum(temp)
replace treated=1 if treated>1
drop temp

生成时间和处理效应的交互项:

g did=time*treated

1.5 混合匹配方法

所谓混合匹配,是指将多期的面板数据当作截面数据来匹配,即和经典psm-did方法(两期数据)的处理方式相同。混合匹配虽然处理起来简单,但是容易形成“时间错配”:即t期的处理组个体和t-i(或t+i)期的对照组个体进行匹配; 以及形成“自匹配问题”:t期个体和t-i(或t+i)期的自身进行匹配。其中,由于我们已经设置了处理组和控制组,一般来说组内不会匹配,所以自匹配问题不易发生。但是时间错配却非常容易发生,造成无法对时间固定效应进行控制。

1.5.1 psm部分

采用k邻近匹配方法(k=1)进行估计:

psmatch2 treated lnage roe turnover liquit debt if time==0, n(1) ate ties logit common

在psm匹配部分,psmatch2命令中不需要加如outcome()参数。结果主要显示了采用logit模型估计treated变量的影响因素!

stata-200

数据平衡性检验:

pstest lnage roe turnover liquit debt,both graph

平衡性检验是psm部分的核心,在结果表中可以看出,除了liquit,其他变量匹配后处理组和对照组不存在差异,即样本数据达到了平衡。

stata-201

图中也显示除了liquit变量,其他变量处理组和对照组的偏差较小。

stata-202

删除未匹配成功的样本:

gen common=_support
drop if common==0

该步骤和经典psm中的处理稍微不同,某个体在时期t没有被匹配,不代表其在其他时间也没有被匹配,所以只能删除该个时期t的数据! (当然,如果某个体在处理效应前的n期都没有被匹配,那么可以将该个体处理效应后的n期数据也删除,但是处理起来较麻烦,这里不在演示!)

1.5.2 DID部分

did部分的处理和单独采用did模型的步骤基本一致!

估计混合面板did模型:

reg lnasset did time treated,r

估计结果中,did变量的系数为正数,且显著,因而外资介入有助于提高企业总资产。

stata-203

估计固定效应面板did模型:

xtset id year
xtreg lnasset did i.year,fe

在估计结果中,did变量的系数依然显著为正数。

stata-204

1.5.3 平行趋势检验

(1)回归方式的检验

生成政策执行前后3期的检验变量:

g n = year-2014
g b3 = (n==-3 & treated==1)
g b2 = (n==-2 & treated==1)
g b1 = (n==-1 & treated==1)
g policyyear = (n==0 & treated==1)
g a1 = (n==1 & treated==1)
g a2 = (n==2 & treated==1)
g a3 = (n==3 & treated==1)

估计各期的效应:

xtreg lnasset time treated b3 b2 b1 policyyear a1 a2 a3 i.year, fe
est sto reg

在估计结果中,政策执行前3期和前2期检验变量的系数不显著,表明政策执行前,外资介入和非外资介入企业的总资产变动趋势一样。政策执行后的0期,1期,2期,3期检验变量的系数均显著为正数,表明政策执行后,外资介入企业的总资产显著提高。当然,本例中政策执行前1期检验变量的系数也显著为正数,这与期望的结果不一致;但只要多数检验变量的结果与预期一致,仍可以表明平行趋势假设成立。

stata-205

(2)绘图方式的检验

安装coefplot命令:

ssc install coefplot

绘制图形:

coefplot reg,keep(b3 b2 b1 policyyear a1 a2 a3) vertical recast(connect) yline(0)

在图形中,政策执行前3期和前2期的散点围绕0值波动,表明政策执行前,外资介入和非外资介入企业的总资产变动趋势一样。政策执行后0期,1期,2期,3期的散点显著高于0值 ,表明政策执行后,外资介入企业的总资产显著提高。这与回归方式的结论一致。

stata-206

1.6 逐期匹配方法

这里进一步演示逐期匹配方法,由于混合匹配中删除了未匹配的数据。所以需要重新读取数据并进行数据预处理。

逐步匹配是指在处理效应的前n期,每一期的处理组和对照组个体分别进行匹配!逐期匹配可能会产生各期控制组和对照组匹配结果不同的情况,导致控制组不稳定的问题。例如,在第t期,处理组的A和对照组的b匹配;在第t+1期,处理组的A和对照组的e匹配、处理组的C和对照组的b匹配,此时不会删除样本。但是如果t+1期处理组A匹配成功但对照组b未成功匹配,就需要将其删除,造成控制组不稳定。虽然在混合匹配中也有未匹配成功的样本,但是由于所有年份数据放在一起匹配,每个个体匹配成功的概率更高,只有较少的数据未匹配成功,需要删除!

1.6.1 psm部分

采用k邻近匹配方法(k=1)逐年匹配并删除未被匹配的样本:

psmatch2 treated lnage roe turnover liquit debt if time==0 & year==2011, n(1) ate ties logit common
gen common=_support
drop if common==0
drop _pscore _treated _support _weight _id _n1 _nn _pdif common

psmatch2 treated lnage roe turnover liquit debt if time==0 & year==2012, n(1) ate ties logit common
gen common=_support
drop if common==0
drop _pscore _treated _support _weight _id _n1 _nn _pdif common

psmatch2 treated lnage roe turnover liquit debt if time==0 & year==2013, n(1) ate ties logit common
gen common=_support
drop if common==0

本例中处理效应前有3期,即2011年,2012年和2013年,分别对其采用psm进行匹配。由于数据处理较多,故不在呈列中间的结果!

1.6.2 DID部分

did部分的处理和单独采用did模型的步骤基本一致!

估计混合面板did模型:

reg lnasset did time treated,r

估计结果中,did变量的系数为正数,且显著,因而外资介入有助于提高企业总资产。

stata-207

估计固定效应面板did模型:

xtset id year
xtreg lnasset did i.year,fe

在估计结果中,did变量的系数依然显著为正数。

stata-208

1.6.3 平行趋势检验

平行趋势检验与混合匹配中的方法一致,这里不再演示!

1.7 代表期匹配

这里进一步演示逐期匹配方法,由于前面的匹配中删除了未匹配的数据。所以需要重新读取数据并进行数据预处理。

代表性匹配就是从处理效应前的n期中选择有代表性的1期进行匹配。其思路与经典psm-did(两期数据)类似!代表性匹配最大的问题在于会损失较多的样本!

这里选择2011年的数据作为代表性数据进行匹配

1.7.1 psm部分

采用k邻近匹配方法(k=1)进行估计:

psmatch2 treated lnage roe turnover liquit debt if time==0 & year==2011, n(1) ate ties logit common

删除未匹配成功的样本:

gen common=_support
replace common=-1 if common==0
bys id :egen temp=sum(common)
drop if temp<0

1.7.2 did部分

估计混合面板did模型:

reg lnasset did time treated,r

估计结果中,did变量的系数为正数,且显著,因而外资介入有助于提高企业总资产。

stata-209

估计固定效应面板did模型:

xtset id year
xtreg lnasset did i.year,fe

在估计结果中,did变量的系数依然显著为正数。

stata-210

1.7.3 平行趋势检验

平行趋势检验与混合匹配中的方法一致,这里不再演示!



获取案例数据,请关注微信公众号并回复:Stata_dt20


Comments

Make a comment

  • Index