其他
双重差分法(DID)平行趋势检验的Stata操作
数据来源
原文信息
石大千,丁海,卫平,刘建江.智慧城市建设能否降低环境污染[J].中国工业经济,2018(06):117-135.
时间趋势图
egen mean_y=mean(lnrso), by(year du)
graph twoway (connect mean_y year if du==1,sort msize(small)) (connect mean_y year if du==0,sort lpattern(dash) msize(small)), ///
xline(2012,lpattern(dash) lcolor(gray)) ///
ytitle("lnrso") xtitle("Year") ///
ylabel(,angle(0) labsize(*0.75)) xlabel(,labsize(*0.75)) ///
legend(label(1 "处理组") label( 2 "控制组")) ///图例
xlabel(2005(1)2015) graphregion(color(white)) //白底
xtdidregress + estat trendplots
命令轻松绘制出处理组和控制组的时间趋势图,这方便了许多。可以发现,使用xtdidregress + estat trendplots
命令绘制的时间趋势图和我们自己绘制的时间趋势图是一致的。事件研究法
forvalues i=5(-1)1{
gen pre`i'=(event==-`i'& du==1)
}
gen current=(event==0 & du==1)
forvalues i=1(1)3{
gen post`i'=(event==`i'& du==1)
}
drop pre5 //丢掉一期作为基准组
reghdfe lnrso pre* current post* $xlist ,absorb(id year) vce(cluster id)
coefplot
,它可以便捷地根据回归结果帮助我们绘制回归系数的取值和置信区间,常用于DID平行趋势检验制图。coefplot, baselevels ///
keep(pre* current post*) ///
vertical ///转置图形
coeflabels(pre4=-4 pre3=-3 pre2=-2 pre1=-1 ///
current=0 post1=1 post2=2 post3=3 post4=4) ///
yline(0,lwidth(vthin) lpattern(solid) lcolor(teal)) ///
xline(5,lwidth(vthin) lpattern(solid) lcolor(teal)) ///
ylabel(,labsize(*0.85) angle(0)) xlabel(,labsize(*0.85)) ///
ytitle("Coefficients") ///
msymbol(O) msize(small) mcolor(gs1) ///plot样式
addplot(line @b @at,lcolor(gs1) lwidth(medthick)) ///增加点之间的连线
ciopts(recast(rline) lwidth(thin) lpattern(dash) lcolor(gs2)) ///置信区间样式
graphregion(color(white)) //白底
keep
用于保留指定的系数;coeflabels
用于为系数指定自定义标签,在这里用来修改横坐标;msymbol
、msize
和mcolor
用于设置点的样式、大小和颜色;addplot(line @b @at)
用于增加点之间的连线;ciopts
用于设置置信区间样式。CT2
。