日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

雙重差分傾向得分匹配(PSM

 晶晶晶晶323 2020-02-03

Angela鎮(zhèn)樓,盡管是奔著CAROLE & TUESDAY去的,誰能想到被Angela圈了粉~

Angela的ED《not afraid》很好聽。

Angela和Tao,意難平。

由于最近過于沉迷楠神的《政策信息學》,

so  鴿了好久欸(理直氣壯.JPG)

我們來完整操作一遍吧。

PSM-DID,本質(zhì)就是先利用PSM的手段進行分組,再利用DID計算政策效應。

outline

一、變量介紹及基礎準備

二、計算p-score

  • 第一種 pscore程序

  • 第二種 psmatch2程序

  • 第三種 nnmatch

三、匹配前后的平衡情況

  • 第一種  psmatch2程序后估計

  • 第二種 核密度曲線前后對比

  • 第三種 diff里面的test support

四、雙重差分

一、變量介紹及基礎準備

因變量:政策實施可能帶來的影響Y。

實驗處理效應:是否實施某項政策(要求treatment effect嚴格外生,不存在內(nèi)生性問題)。

匹配變量(協(xié)變量:使用盡可能多的協(xié)變量可以最大程度的滿足“可忽略假設”

這里面可以認為實驗處理效應D是一個格外關注的自變量,協(xié)變量Xi是控制變量。因此,對于Y和D的選擇要直接相關,譬如說處理效應是“職業(yè)培訓”,那么Y應該是工資;處理效應是“河長制”的建立,那么Y應該是河流治理水平;處理效應是“新藥”,那么Y應該是壽命或者其他健康指標。

同樣重要的是協(xié)變量的選取,有兩大準則,首先當然和treatment effects垂直獨立,其次是要在已有文獻中研究能夠對Y有影響的變量,譬如說

  • 李賁&吳利華(2018)研究開發(fā)區(qū)設立(D)和企業(yè)成長(Y)的關系,對于協(xié)變量的選取就是企業(yè)年齡(Age 及其二次項Age×Age)、企業(yè)規(guī)模(Scale)、企業(yè)資產(chǎn)收益率(ROA)、企業(yè)資本密集度(Clr)、企業(yè)杠桿率(Leverage)、企業(yè)融資約束(Finance)、企業(yè)工資水平(Wage)、國有控股虛擬變量(State)、地區(qū)虛擬變量以及行業(yè)虛擬變量作為匹配的特征變量。

  • Jiahuan Lu(2015)研究的是以績效為基礎的外包(D)和績效(Y)之間的關系,協(xié)變量的選取包括State and service year、Demographic background、Race、Gender (female)、Veteran、Primary disability、Secondary disability、Preservice status、Employment services。

  • 石大千等(2018)研究的是智慧城市建設(D)和降低環(huán)境污染(Y),對于協(xié)變量的選取包括經(jīng)濟發(fā)展水平、城市化、對外開放、技術創(chuàng)新和產(chǎn)業(yè)結構。

  • Urban & Niebler(2014)研究的是在搖擺州投放廣告(D)和總統(tǒng)競選(Y)之間的關系,對于協(xié)變量取值包括該州的median household income, percent hispanic, percent african american, percen college graduates, and population density等。

此外,協(xié)變量的選取也應該符合一般線性回歸,不存在多重共線性,不存在內(nèi)生性等問題。

第一步 安裝程序

安裝psmatch2,pscore diff 等程序

* Download and install Stata ado files for psmatch2、diff

【ssc install psmatch2, replace
ssc install diff, replace】

第二步 變量定義

對自變量、因變量、treatment variable進行定義,如

* Define treatment, outcome, and independent variables

global treatment treatment
global ylist Score
global xlist mobile_phone internet gdp_pc ……
global breps 2000

這里面【breps】表示bootstrap抽樣次數(shù),一般200應該差不多。

*Define  panel data variable

encode city , gen(city2)
xtset city2 year

、計算p-score

之前的時候,小白上傳的Ani Katchova老師的視頻

里面的【pscore】程序,可以直接計算pscore

pscore estimates the propensity score (pscore) of the treatment on varlist (the control variables) using a probit (or logit) model and stratifies individuals in blocks according to the pscore; displays summary statistics of the pscore and of the stratification; checks that the balancing property is satisfied; if not satisfied asks for a less parsimonious specification of the pscore; saves the estimated pscore and - optionally - the block number. The estimated propensity scores can then be used together with attr, attk, attnw, attnd, and atts to obtain estimates of the average treatment effect on the treated using, respectively, radius matching, kernel matching, nearest neighbour matching (in one of the two versions: equal weights and random draw), and stratification, the latter using the block numbers as an input.

第一種 pscore程序

* Propensity score matching with common support
pscore $treatment $xlist, pscore(myscore) blockid(myblock) comsup

這個程序會比陳強老師書里面提到的psmatch2可以輸出更為詳細的匹配得分計算細節(jié)

第一張表告知實驗組和控制組的頻次等基本情況

第二張表顯示傾向得分計算情況,不過看樣子默認是用probit reg,我們待會用logit計算看看


緊接著的note告訴我們common support的范圍。

common support中的p-score的描述情況,包括百分位數(shù),樣本數(shù),均值,峰度等等

這個還有一個顯著的優(yōu)勢就是“分區(qū)塊”,保證區(qū)塊內(nèi)的實驗組和對照組的pscore不存在統(tǒng)計學差異

緊接著的就是平衡性檢驗,如果平衡性檢驗通過了,就是黑色的字體告訴你“satisfied”,如果不滿足就會是紅色的warning字體,告訴你“unsatisfied”

如果遇到unsatisfied的情況,會告訴你是因為你選擇的那個協(xié)變量導致common support過低,平衡性檢驗不通過,這時候我的建議是刪除這個協(xié)變量。

回到data視圖,可以看見新增了三個變量

第二步 進行匹配

①匹配方法選擇

在實際進行匹配中,究竟應使用哪種具體方法或參數(shù)(比如k臨近匹配的k取值,是否放回,如何處理并列),目前文獻中尚未明確指明。一般認為,根據(jù)具體數(shù)據(jù)來選擇具體方法。比如控制組個體不多,則應該進行有放回的匹配,如果存在較多具有可比性的控制組個體,則考慮一對多或核匹配,以提高匹配效率。在實踐中,一般建議嘗試不同的匹配方法,然后比較其結果(類似于敏感性分析);如果不同方法的結果相似,說明結果是穩(wěn)健的,不依賴于具體方法,如果差異較大,則需要考察具體出現(xiàn)的原因。

我們看其他學者的做法,也是直接匯報采用了哪一種匹配方法

  • 徐志剛等(2018)采用的是核匹配方法,選擇默認值0.06作為區(qū)間間隔。

  • Urban & Niebler(2014)采用了局部線性匹配、核匹配

  • Jiahuan Lu(2015)采用的是one-to-one nearest neighbor matching without replacement. A caliper is included to ensure that matched units are chosen only when the absolute distance between the two units is within the caliper. Higher powers and interaction terms of the covariates are added when necessary to achieve the best possible matching outcomes (Guo and Fraser 2010).

  • 李賁&吳利華(2018)借鑒Abadie et al.(2004)的研究,采用“k 近鄰匹配”(k=4)方法;匹配時不允許并列,當存在傾向得分相同的并列個體, 按照數(shù)據(jù)排序選擇。

  • 石大千等(2018)采用的是核匹配法

所以說,大家都沒有說明為什么選這個方法。。。。

所以比較tricky的做法就是,把所有匹配方法都做一下,哪個效果最好匯報哪一個咯~

本狗

程序見下

* Nearest neighbor matching
attnd $ylist $treatment $xlist, pscore(myscore) comsup boot reps($breps) dots

* Radius matching
attr $ylist $treatment $xlist, pscore(myscore) comsup boot reps($breps) dots radius(0.1)

* Kernel Matching
attk $ylist $treatment $xlist, pscore(myscore) comsup boot reps($breps) dots

kernel matching運行起來好慢好慢好慢好慢好慢啊

* Stratification Matching
atts $ylist $treatment $xlist, pscore(myscore) blockid(myblock) comsup boot reps($breps) dots

第二種 psmatch2程序

psmatch2可以直接選擇匹配的方法。程序的介紹詳見陳強老師P545頁。

需要注意的是,

  • 默認程序里面估計方法是probit,不過我們常用的是logit,

  • 默認是全部匹配,common表示只僅對common support內(nèi)的個體進行匹配,最好用common。

  • 默認是僅匯報ATT,可以用ate補充匯報ATT, AUT, ATT

采用不同的匹配方法

* Matching methods 

* K neighbor matching K臨近匹配

psmatch2 treatment $xlist, neighbor(1) logit  out(score)

會輸出很多新的變量

如果我們選擇【psmatch2 treatment $xlist, neighbor(1) logit  ate common out(score)】

會多輸出ATU ATE以及_score -n1等值

* Radius matching 

psmatch2 treatment $xlist, radius logit  

* Kernel Matching

psmatch2 treatment $xlist, kernel  logit

欸,用psmatch2的kernel匹配比pscore程序快很多欸

第三種 nnmatch程序

一些學者還喜歡借鑒Abadie et al.(2004)的研究,采用“k 近鄰匹配”(k=4)方法;匹配時不允許并列,當存在傾向得分相同的并列個體, 按照數(shù)據(jù)排序選擇;并選擇作為匹配的特征變量。

記得安裝一下nnmatch

程序安裝

*Abadie et al.(2004)的程序

nnmatch score treatment $xlist, tc(att) m(4) bias(bias)

這個程序運行起來會比較慢。bias可以不用。

原文示例

小白自己的結果見下。

三、匹配前后的平衡情況

在進行PSM-DID 估計前,還需進行模型有效性檢驗。其中首先需要檢驗匹配后各變量實驗組和控制組是否變得平衡, 也就是說實驗組和控制組協(xié)變量的均值在匹配后是否具有顯著差異。如果不存在顯著差異,則支持使用PSM-DID 方法。

H0:實驗組與控制組協(xié)變量之間無顯著差異。

第一種 psmatch2后估計

剛才的psmatch2還有一個優(yōu)點就是,自帶兩個“估計后命令”(post-estimation commands),分別用來檢驗匹配后數(shù)據(jù)是否平衡,以及畫圖顯示傾向得分的共同取值范圍。

輸入

【pstest $xlist, both graph】

會輸出兩張表,第一張介紹匹配前后不同維度的協(xié)變量的t檢驗。結果非常理想。

Ideally, after the matching procedure, the absolute standardized difference of covariate means should be less than 5%, and the t-statistic should no longer be significant (D’Agostino 1998; Haviland, Nagin, and Rosenbaum 2007).

可以看見,match以后,所有的協(xié)變量T檢驗都不顯著了。

其次就是輸出匹配前后的對比圖


重點看匹配以后的值是否接近0,一般只要小于10%就可以接受。

另外一個post-estimation command 是直方圖

輸入【psgraph, bin(20)】

這個圖有點奇怪,沒有區(qū)分on support和off support。沒有查到原因,

要不然正常情況下輸出應該是這樣的

第二種 繪制匹配前的密度函數(shù)圖

第一步,繪制匹配前的密度函數(shù)圖

 *-(a)before matching: 匹配前的密度函數(shù)圖

        twoway (kdensity _ps if treatment==1,lp(solid) lw(*2.5))      ///

               (kdensity _ps if treatment==0,lp(dash)  lw(*2.5)),     ///

            ytitle("核密度")                                      ///

ylabel(,angle(0))                                      ///

            xtitle("傾向得分值")                             ///

xscale(titlegap(2))                                    ///

            xlabel(0(0.2)0.8, format(%2.1f))                       ///

            legend(label(1 "實驗組") label(2 "控制組") row(2)  ///

                   position(12) ring(0))                            ///

            scheme(s1mono) 

         graph export "01.wmf", replace fontface("Times New Roman")   

效果圖見下:

第二步,繪制匹配后的傾向得分圖

采用psmatch2計算匹配后的p-score

 psmatch2 t $xlist, neighbor(1) logit  out(score) 

 *-(b)after matching: 匹配后的密度函數(shù)圖

        twoway (kdensity _ps if  treatment==1,lp(solid) lw(*2.5))         ///

               (kdensity _ps if  treatment==0&_wei!=.,lp(dash) lw(*2.5)), ///

               ytitle("核密度") ylabel(,angle(0))                    ///

               xtitle("傾向得分值") xscale(titlegap(2))         ///

               xlabel(0(0.2)0.8, format(%2.1f))                       ///

               legend(label(1 "實驗組") label(2 "控制組") row(2)  ///

                      position(12) ring(0))                            ///

               scheme(s1mono) 

        graph export "02.wmf", replace fontface("Times New Roman")    

效果圖見下:

在匹配后實驗組和控制組傾向得分值的概率密度已經(jīng)比較接近,說明匹配效果較好。因此,在共同支撐假設基礎上進一步證明了PSM-DID方法的可行性和合理性。

第三種 diff里面的test support

*檢驗匹配后各變量實驗組和控制組是否變得平衡

diff score,t($treatment) p(t_2012) kernel id(city2) logit cov($xlist)  test support

判斷匹配過程的有效性主要可以從匹配前后的t 統(tǒng)計量的變化、匹配前后標準偏差的變化兩個方面來看:①從t 統(tǒng)計量的變化中可以發(fā)現(xiàn),特征變量在匹配之后均不再具有顯著差異【紅色方框顯示】。從各協(xié)變量的檢驗結果看,匹配后所有變量均不存在顯著性差異,而結果變量score存在十分顯著的差異,從而證明使用PSM-DID 方法是合理的。

②匹配后標準偏差的絕對值越小,說明匹配的效果越好;Rosenbaum and Rubin(1985)認為若匹配后標準偏差的絕對值能夠小于20%,則匹配處理是有效的。根據(jù)匹配過程中處理組與對照組的平衡性檢驗結果,差不多20%,還差一點點理想。

【diff score,t($treatment) p(t_2012) kernel id(city2) logit cov($xlist)  report support】

上面這個表格還可以進一步整理成為類似下面的表格

四、雙重差分

一、沒有匹配的普通差分

所謂“雙重差分估計量”(difference-in-differences estimator),指實驗組的平均變化與控制組的平均變化之差。采用DID可以剔除實驗組與控制組“實驗前差異”(pretreatment differences);雙重差分的隱含假設是,即使沒有政策變化,控制組與實驗組的時間趨勢也一樣。

倍差法(Difference-in-Differences)不要求假設實驗組和控制組樣本在實驗前同質(zhì),它是在假設實驗組和控制組前后變化趨勢相同的情況下,通過兩次差分來計算實驗處理效應對實驗組的平均處理效應ATT(Blundell R. and Dias M. C.,2002)。但是采用倍差法的假設是遵循“共同趨勢”假設,否則參數(shù)估計結果會有偏差(Heckman et al.,1998)。

盡管剛才我們提到了【diff】,但我們還是follow Jiahuan Lu(2015)等學者的做法,手工計算。

Puhani (2012) and Karaca-Mandic, Norton, and Dowd (2012) further demonstrate that with DID models only, the incremental effect of the coefficient of the interaction term could approximate the treatment effect on the treated.

寫出DID的回歸方程

Y= β0+β1Treatment + β2Policy+ β3Treatment *Policy+εit

其中policy表示政策效果,為政策效果虛擬變量,實施某政策前為0,實施后為1。

匯報表格也和Jiahuan Lu(2015)一樣,首先匯報DID結果

程序【xtreg $ylist t_2012 treatment jh $xlist,re r】

其中,t_2012是上面的政策效果虛擬變量,2012年及以前為0,2012年以后為1

jh為政策效果虛擬變量和實驗效果的交互項。

交互項顯著表示政策效果有效。

二、匹配以后的差分

我們采用一對一無放回鄰匹配

程序

【psmatch2 treatment $xlist, neighbor(1) logit  ate common out(score) noreplacement】

結果會多出來幾個變量,其中比較重要的是生產(chǎn)了新的對照組

PSM-DID是指基于PSM結果進行的DID。

所以DID的程序是一樣的,只不過變量改變了。

生成新的交互項

gen newjh=_treated*t_2012

再跑一遍DID

xtreg $ylist t_2012 _treated newjh $xlist,re r, if _support==1

一般而言不會再去匯報普通DID的結果了,直接匯報PSM-DID結果。和剛才的普通DID相比,樣本量顯著的降低了。但是交互項的顯著性還是不變的。

完結撒花??ヽ(°▽°)ノ?

關于PSM-DID我還是一知半解,如果有比較了解的大佬,還望幫忙挑出毛病和指導一下~~

參考文獻

田利輝,王可第.社會責任信息披露的“掩飾效應”和上市公司崩盤風險——來自中國股票市場的DID-PSM分析[J].管理世界,2017(11):146-157. 

李賁,吳利華.開發(fā)區(qū)設立與企業(yè)成長:異質(zhì)性與機制研究[J].中國工業(yè)經(jīng)濟,2018(04):79-97. 

Lu J. The performance of performance-based contracting in human services: a quasi-experiment[J]. Journal of Public Administration Research and Theory, 2015, 26(2): 277-293.

石大千,丁海,衛(wèi)平,劉建江.智慧城市建設能否降低環(huán)境污染[J].中國工業(yè)經(jīng)濟,2018(06):117-135.

Urban C, Niebler S. Dollars on the Sidewalk: Should US Presidential Candidates Advertise in Uncontested States?[J]. American Journal of Political Science, 2014, 58(2): 322-336.

何文盛,姜雅婷,唐序康.行政審批制度改革可以提升地方政府績效嗎?——基于中國15個副省級城市2001—2015年面板數(shù)據(jù)的分析[J].公共行政評論,2019,12(03):118-138+192-193.

徐志剛,寧可,鐘甫寧,紀月清.新農(nóng)保與農(nóng)地轉出:制度性養(yǎng)老能替代土地養(yǎng)老嗎?——基于家庭人口結構和流動性約束的視角[J].管理世界,2018,34(05):86-97+180.

彩蛋

先獲得每年的處理組和對照組樣本,如果使用的是“漸進式”DID 方法,需要將樣本按照進入年份逐年進行匹配。

我前幾天無所事事查文獻的時候,看見了Gary King 18年的這篇《Why Propensity Scores Should Not Be Used for Matching》,還是比較新。雖然看見Gary king我就想起他提出的半監(jiān)督學習的Readme程序bug過多,害我花了很久時間都沒有搞出來(記小本本),但是我還是仔細拜讀了一下??傮w和我們這篇操作是唱反調(diào)的,p-score不適用匹配。

感悟

其實剛開始接觸PSM-DID的時候走了很多很多很多很多彎路啊。這篇專欄一度流產(chǎn)。知道論文的ddl來了。。我果然還是ddl驅(qū)動的。

最大的感悟就是,JPART不愧是我最愛的期刊。

真的,管理世界和JPART這兩個期刊對學方法的人來說簡直太友好了,每一個步驟都講得很詳細,AJPS經(jīng)管“數(shù)據(jù)公開”,可是經(jīng)常復制不出來文章中的結果,很多書里面的都是理論,沒有操作細節(jié)。JPART就好圈粉。detailedly&systemly。

尤其是Jiahuan Lu(2015)的這篇文章太令我感動了,比較少人在跑回歸前還檢驗異方差并校正,都是直接用個robust或者普通ols。說好的跑ols要滿足高斯馬爾科夫定理,但是很少人遵守。感動。T^T

我一定要強迫我們南霸天老師也看!?。。?/p>

吃我安利?。。。。。?!

小白和南霸天的日常

Angela結尾。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多