双重差分法之平行趋势检验 您所在的位置:网站首页 多重did模型 双重差分法之平行趋势检验

双重差分法之平行趋势检验

2023-09-17 17:44| 来源: 网络整理| 查看: 265

简单介绍一下实证论文中双重差分法(DID)的平行趋势检验(Parallel Trend Test)在Stata中如何操作。

(本文首发于个人微信公众号DMETP,欢迎关注!)

一、平行趋势假定

平行趋势假定是实证论文中使用DID的前提,处理组与控制组的目标变量在政策发生前(事前)只有满足平行趋势假设才能使用DID。反之,如果处理组和控制组在事前就存在一定的差异,那么用DID做出来(可能还很好看)的结果就不再能代表政策的净效应,极有可能存在其他因素影响我们被解释变量的变动,此时可以使用三重差分法(DDD)。关于三重差分模型,连老师的一篇知乎推文讲的超级详细。

二、平行趋势检验

这里主要介绍两种情况下的平行趋势检验。

一是普通DID模型的平行趋势检验,包括怎么画时间趋势图,怎么画95%置信区间图(动态效应检验图)。这里以石大千等(2018)公布在《中国工业经济》官网上的数据为例,由于所公布资料无法生成处理组虚拟变量,这里将使用微信公众号『功夫计量经济学』处理之后的数据。

参考文献:

石大千, 丁海, 卫平, 刘建江. 智慧城市建设能否降低环境污染[J]. 中国工业经济, 2018(06): 117-135.

二是多期DID模型的平行趋势检验,包括怎么画95%置信区间图。这里之所以没有画平行趋势图,是因为在多期DID中,各个处理组受到政策冲击的时点不一致。因此,就算能够准确识别出处理组和控制组,由于处理组政策起始时点不一致,我们也很难在同一张图中将两组目标变量的时间趋势图画出来。

李青原和章尹赛楠(2021)的思路是,单独提取从样本开始年份直到某一年年末才受到政策冲击的样本为处理组,并将从样本开始年份直到某一年年末都没受到政策冲击的样本作为控制组,画出两组间的时间趋势图,这样的方法在政策冲击时点较少时可以考虑,因此不具有一般性。

参考文献:

李青原, 章尹赛楠. 金融开放与资源配置效率——来自外资银行进入中国的证据[J]. 中国工业经济, 2021(05): 95-113.

三、动态效应检验

动态效应检验实质上就是引入有限个时间虚拟变量,并将其与处理组虚拟变量交乘,考察交乘项的显著性。动态效应检验和平行趋势检验是有区别的,平行趋势检验中,只要考察0时期前的交乘项是否显著,如果不显著,说明处理组和控制组在事前并没有显著差异,可以使用DID。

而动态效应检验不仅考察事前,也关注事后组别之间的差异,如果0时期后(包括0时期)的交乘项显著,说明政策实施存在一定的持续性效果。当然,平行趋势检验只要求事前不显著,事后显不显著不影响事前的结论。

由于多期DID中处理组受到政策影响的时点不一致,那么怎样生成时间虚拟变量就成为一个问题。在李青原和章尹赛楠(2021)中,分为5个时期,分别是样本起始年份至政策实施前两年、政策实施前一年、政策实施当年,政策实施后一年、政策实施后两年至样本结束年份;而在沈坤荣和金刚(2018)中,直接省略政策推行前三年以上的年份。可见,多期DID平行趋势检验中如何设计时间虚拟变量需要兼顾理论假设和最终结果,同时需要想象力~

参考文献:

沈坤荣, 金刚. 中国地方政府环境治理的政策效应——基于“河长制”演进的研究[J]. 中国社会科学, 2018(05): 92-115.

四、Stata代码 *==============================================================================* * 双重差分法(DID) | 平行趋势检验 * *==============================================================================* ** Stata Version: 16 | 17 ** 【数据来源】普通DID(原始数据):石大千等(2018), 参见在《中国工业经济》网站(http://ciejournal.ajcass.org/Magazine/show/?id=54281) *- 普通DID(加工数据):『功夫计量经济学』微信公众号(https://mp.weixin.qq.com/s/06v6s90G1pp-yLju_yAy1Q) *- 多期DID(原始数据):李青原和章尹赛楠(2021),参见在《中国工业经济》网站(http://ciejournal.ajcass.org/Magazine/show/?id=77331) ** 【参考文献】[1] 石大千, 丁海, 卫平, 刘建江. 智慧城市建设能否降低环境污染[J]. 中国工业经济, 2018(06): 117-135. *- [2] 李青原, 章尹赛楠. 金融开放与资源配置效率——来自外资银行进入中国的证据[J]. 中国工业经济, 2021(05): 95-113. *- [3] 沈坤荣, 金刚. 中国地方政府环境治理的政策效应——基于“河长制”演进的研究[J]. 中国社会科学, 2018(05): 92-115+206. cd "C:\Users\KEMOSABE\Desktop\parallel_trend_test" graph set window fontface "Times New Roman" graph set window fontfacesans "宋体" **# 一、普通DID的平行趋势检验 use smart_city2018.dta, clear global xlist "lnrgdp lninno lnurb lnopen lnss" **# 1.1 时间趋势图 bysort du year: egen mean_lnrso = mean(lnrso) twoway(line mean_lnrso year if du == 1, /// lpattern(solid) /// lcolor(black) /// lwidth(thin) /// scheme(qleanmono) /// ytitle("{stSans:人}""{stSans:均}""{stSans:废}" /// "{stSans:气}""{stSans:排}""{stSans:放}" /// "{stSans:量}" , size(medlarge) orientation(h)) /// xtitle("{stSans:年份}", size(medlarge)) /// xline(2012, lpattern(solid) lcolor(black) lwidth(thin)) /// saving(parallel_trend_test_1-1, replace)) /// (line mean_lnrso year if du == 0, /// lpattern(shortdash) /// lcolor(black) /// lwidth(thin)) , /// xlabel(2005(2)2015 , labsize(medlarge)) /// ylabel(-2.5(0.25)-1.5, labsize(medlarge) format(%3.2f)) /// legend(label(1 "{stSans:处理组}") /// label(2 "{stSans:控制组}") /// size(medlarge) position(1) symxsize(10)) graph export "parallel_trend_test_1-1.emf", replace discard // 结果已保存至路径文件夹 **# 1.2 动态效应检验(事件研究法) gen current = 2012.year * du forvalue i = 4(-1)1 { gen before`i' = (year == 2012 - `i') * du } forvalue k = 1/3 { gen after`k' = (year == 2012 + `k') * du } drop before4 // 将2008年作为基准年 qui reghdfe lnrso before* current after* $xlist , absorb(id year) cluster(id) coefplot, /// keep(before* current after*) /// vertical /// scheme(qleanmono) /// coeflabels(before3 = -3 /// before2 = -2 /// before1 = -1 /// current = 0 /// after1 = 1 /// after2 = 2 /// after3 = 3) /// msymbol(O) msize(small) mcolor(black) /// addplot(line @b @at, lcolor(black) lwidth(thin) lpattern(solid)) /// ciopts(recast(rcap) lcolor(black) lwidth(thin)) /// yline(0, lpattern(dash) lcolor(black) lwidth(thin)) /// ytitle("{stSans:系}""{stSans:数}", size(medlarge) orientation(h)) /// xtitle("{stSans:期数}" , size(medlarge)) /// xlabel(, labsize(medlarge)) /// ylabel(, labsize(medlarge) format(%02.1f)) /// saving(parallel_trend_test_1-2, replace) graph export "parallel_trend_test_1-2.emf", replace discard clear all cls **# 二、多期DID的平行趋势检验 use 平行趋势检验.dta, clear global y "TFPQD_OP TFPQD_LP" global adjyear "yb2 yb1 y0 ya1 ya2" global ctrlvars "ADM PPE ADV RD HHI INDSIZE NFIRMS FCFIRM MARGIN LEVDISP SIZEDISP ENTRYR EXITR" global options "absorb((city)*(year) (ind3)*(year)) cluster(city year) keepsing" gen year_enter = 2007 replace year_enter = 2004 if city == 5101 | city == 5000 | city == 2102 | /// city == 3501 | city == 4401 | city == 3701 | /// city == 3201 | city == 3702 | city == 3101 | /// city == 4403 | city == 1200 | city == 4201 | /// city == 4404 | prov == 44 | prov == 45 | /// prov == 43 | prov == 32 | prov == 33 replace year_enter = 2005 if city == 1100 | city == 5301 | city == 2101 | /// city == 3502 | city == 6101 replace year_enter = 2006 if city == 2201 | city == 2301 | city == 6201 | /// city == 6401 gen yb2 = (year_enter == year + 2) gen yb1 = (year_enter == year + 1) gen y0 = (year_enter == year) gen ya1 = (year_enter == year - 1) gen ya2 = (year_enter


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有