经典psm-did方法(两期数据)有坚实的理论基础,但是由于处理前只有1期数据,因而在使用中受到较大限制。更多的现实问题要求处理前和处理后有多期数据。然而,如果直接将经典psm-did方法应用于多期数据,可能会造成估计偏差,并且目前多期数据psm-did方法也缺乏完善的理论证明!
虽然缺乏严格的理论证明,不过也有许多学者探索了多种处理多期数据psm-did的处理方法,且在国内外的权威期刊中已经得到应用。
1 多期数据psm-did模型的应用
1.1 数据
我们已“传统DID-多期数据”中的例子来演示。这里我们进一步采用PSM-DID方法来研究,由于采用PSM对处理组和对照组进行了匹配,所以能够消除样本的选择偏差,使估计更加准确。
1.2 录入数据
打开数据编辑窗口,将数据从Excel中复制到Stata,注意粘贴时选择“将第一行作为变量名”
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变量的影响因素!
数据平衡性检验:
pstest lnage roe turnover liquit debt,both graph
平衡性检验是psm部分的核心,在结果表中可以看出,除了liquit,其他变量匹配后处理组和对照组不存在差异,即样本数据达到了平衡。
图中也显示除了liquit变量,其他变量处理组和对照组的偏差较小。
删除未匹配成功的样本:
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变量的系数为正数,且显著,因而外资介入有助于提高企业总资产。
估计固定效应面板did模型:
xtset id year
xtreg lnasset did i.year,fe
在估计结果中,did变量的系数依然显著为正数。
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期检验变量的系数也显著为正数,这与期望的结果不一致;但只要多数检验变量的结果与预期一致,仍可以表明平行趋势假设成立。
(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值 ,表明政策执行后,外资介入企业的总资产显著提高。这与回归方式的结论一致。
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变量的系数为正数,且显著,因而外资介入有助于提高企业总资产。
估计固定效应面板did模型:
xtset id year
xtreg lnasset did i.year,fe
在估计结果中,did变量的系数依然显著为正数。
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变量的系数为正数,且显著,因而外资介入有助于提高企业总资产。
估计固定效应面板did模型:
xtset id year
xtreg lnasset did i.year,fe
在估计结果中,did变量的系数依然显著为正数。
1.7.3 平行趋势检验
平行趋势检验与混合匹配中的方法一致,这里不再演示!