郵箱:econometrics666@126.com 所有計(jì)量經(jīng)濟(jì)圈方法論叢的do文件, 微觀數(shù)據(jù)庫(kù)和各種軟件都放在社群里.歡迎到計(jì)量經(jīng)濟(jì)圈社群交流訪問(wèn). 在實(shí)證研究中,我們總是希望評(píng)估外生的政策沖擊對(duì)某個(gè)重要因素的影響,此時(shí)用得最多的方法就是雙重差分(DID)及其各種變體(PSM-DID)。鑒于此,給大家整理一下關(guān)于雙重差分方法的代碼和數(shù)據(jù)。 *完整版do文件和數(shù)據(jù)放在社群里了,群友可以直接提取使用。______________________________________________________________webuse nlswork //使用系統(tǒng)自帶數(shù)據(jù)庫(kù) xtset idcode year, delta(1) //設(shè)置面板 xtdescribe //描述一下這個(gè)面板數(shù)據(jù)情況 gen age2= age^2 gen ttl_exp2=ttl_exp^2 gen tenure2=tenure^2 global xlist "grade age age2 ttl_exp ttl_exp2 tenure tenure2 not_smsa south race" sum ln_w $xlist //統(tǒng)計(jì)描述相關(guān)變量 —————————————————————————————————— **DID方法----------------------------------- gen time = (year >= 77) & !missing(year) //政策執(zhí)行時(shí)間為1977年 gen treated = (idcode >2000)&!missing(idcode) //政策執(zhí)行地方為idcode大于2000的地方 gen did = time*treated //這就是需要估計(jì)的DID,也就所交叉項(xiàng) reg ln_w did time treated $xlist //這就是一個(gè)OLS回歸,也可以用diff命令 xtreg ln_w did time treated $xlist i.year, fe //也可以這去做,會(huì)省略掉一個(gè)虛擬變量 —————————————————————————————————— **PSM-DID方法------------------------------- ** PSM的部分 set seed 0001 //定義種子 gen tmp = runiform() //生成隨機(jī)數(shù) sort tmp //把數(shù)據(jù)庫(kù)隨機(jī)整理 psmatch2 treated $xlist, out(ln_w) logit ate neighbor(1) common caliper(.05) ties //通過(guò)近鄰匹配,這里可以要outcome,也可以不要它 pstest $xlist, both graph //檢驗(yàn)協(xié)變量在處理組與控制組之間是否平衡 gen common=_support drop if common == 0 //去掉不滿足共同區(qū)域假定的觀測(cè)值 

** DID的部分,根據(jù)上面匹配好的數(shù)據(jù) reg ln_w did time treated $xlist xtreg ln_w did time treated $xlist i.year, fe **PSM-DID部分結(jié)束-------------------------------------- —————————————————————————————————— **DID方法需要滿足的五個(gè)條件檢驗(yàn)------------------------
**1.共同趨勢(shì)假設(shè)檢驗(yàn) tab year, gen(yrdum) //產(chǎn)生year dummy,即每一年一個(gè)dummy變量 forval v=1/7{ gen treated`v'=yrdum`v'*treated } //這個(gè)相當(dāng)于產(chǎn)生了政策實(shí)行前的那些年份與處理虛擬變量的交互項(xiàng) xtreg ln_w did treated* i.year ,fe //這個(gè)沒有加控制變量 xtreg ln_w did treated* $xlist i.year ,fe //如果did依然顯著,且treated*這些政策施行前年份交互項(xiàng)并不顯著,那就好 xtreg ln_w did treated* $xlist i.year if union!=1 ,fe //我們認(rèn)為工會(huì)會(huì)影響這個(gè)處理組和控制組的共同趨勢(shì),因此我們看看union=0的情形 **2.政策干預(yù)時(shí)間的隨機(jī)性 gen time1 = (year >= 75) & !missing(year) //政策執(zhí)行時(shí)間提前到1975年 gen treated1= (idcode >2000)&!missing(idcode) //政策執(zhí)行地方為idcode大于2000的地方 gen did1 = time1*treated1 //這就是需要估計(jì)的DID,也就所交叉項(xiàng) gen time2 = (year >= 76) & !missing(year) //政策執(zhí)行時(shí)間提前到1976年 gen treated2= (idcode >2000)&!missing(idcode) //政策執(zhí)行地方為idcode大于2000的地方 gen did2 = time2*treated2 //這就是需要估計(jì)的DID,也就所交叉項(xiàng) xtreg ln_w did1 $xlist i.year,fe xtreg ln_w did2 $xlist i.year,fe //看看這兩式子里did1和did2顯著不 **3.控制組將不受到政策的影響 gen time = (year >= 77) & !missing(year) gen treated3= (idcode<1600 & idcode>1000)&!missing(idcode) //我們考慮一個(gè)并沒有受政策影響地方假設(shè)其受到政策影響 gen did3 = time*treated3 xtreg ln_w did3 $xlist i.year,fe //最好的情況是did3不顯著,證明控制組不受政策影響 **4.政策實(shí)施的唯一性,至少證明這個(gè)政策才是主要影響因素 gen time = (year >= 77) & !missing(year) gen treated4= (idcode<3000 & idcode>2300)&!missing(idcode) //我們尋找某些受到其他政策影響的地方 gen did4 = time*treated4 xtreg ln_w did4 $xlist i.year,fe //did4可能依然顯著,但是系數(shù)變小,證明還受到其他政策影響 **5.控制組和政策影響組的分組是隨機(jī)的 xi:xtivreg2 ln_w (did=hours tenure) $xlist i.year,fe first //用工具變量來(lái)替代政策變量,解決因?yàn)榉纸M非隨機(jī)導(dǎo)致的內(nèi)生性問(wèn)題 —————————————————————————————————— **附加的,一般而言,我們需要看看這個(gè)政策的動(dòng)態(tài)影響------------- forval v=8/15{ gen treated`v'=yrdum`v'*treat } //注意,這里yrdum8就相當(dāng)于year=78 reg ln_w treated* xtreg ln_w treated*, fe xtreg ln_w treated* i.year,fe xtreg ln_w treated* $xlist i.year,fe //一般而言上面這些式子里的treated*應(yīng)該至少部分顯著 —————————————————————————————————— **RDD斷點(diǎn)回歸在這里的應(yīng)用------------------- **最優(yōu)帶寬 rdbwselect ln_w year if 60<=year&year<=85,c(77) kernel(uni) //這是第一個(gè)命令 rdob ln_w year, c(77) //這個(gè)命令是imbens新開發(fā)的 **RDD回歸
reg ln_w time $xlist if 60<year&year<80 //直接對(duì)time這個(gè)虛擬變量做了ols tab treated,missing keep if treated==1 cmogram ln_w year,cut(77) scatter lineat(77) qfitci //這個(gè)可以畫出RDD回歸的圖 
*計(jì)量社群里討論最多的也是這些東西,每天看上百條學(xué)術(shù)討論讓我們都受益頗多。 下面這些短鏈接文章屬于合集,可以收藏起來(lái)閱讀,不然以后都找不到了。
2.5年,計(jì)量經(jīng)濟(jì)圈近1000篇不重類計(jì)量文章, 可直接在公眾號(hào)菜單欄搜索任何計(jì)量相關(guān)問(wèn)題,
Econometrics Circle 計(jì)量經(jīng)濟(jì)圈組織了一個(gè)計(jì)量社群,有如下特征:熱情互助最多、前沿趨勢(shì)最多、社科資料最多、社科數(shù)據(jù)最多、科研牛人最多、海外名校最多。因此,建議積極進(jìn)取和有強(qiáng)烈研習(xí)激情的中青年學(xué)者到社群交流探討,始終堅(jiān)信優(yōu)秀是通過(guò)感染優(yōu)秀而互相成就彼此的。
|