傾向得分匹配法數據分析(傾向得分匹配PSM的原理與步驟)
2023-09-23 11:55:20 1
匹配估計的思想:假如你要研究企業的R&D投入對performance的影響,匹配思想是這樣的:假如有兩家企業,其R&D投入明顯不同,但是其他各方面都高度相同,例如公司規模,槓桿率,所屬行業,公司治理結構等,那麼在其他各方面都高度相同的情況下,這時就可以把公司performance的差異歸因到R&D投入的差異。這種找到一個控制組的個體,使得該個體與處理組的個體在除自變量外其他各因素都相似(也就是匹配),在通過自變量的差異解釋因變量差異的行為,就是匹配的思想。
一般來說,每個樣本有多個屬性,例如一家公司,屬性有公司規模,公司年齡,槓桿率,增長率,市場佔有率,治理結構相關變量,行業等,這就意味著匹配時要考慮諸多屬性,也就是進行高維度匹配。一個比較好的思路是定義高維空間的距離,然後計算兩個樣本在高維空間的距離。
傾向得分的定義是一個個體進入處理組的概率,為什麼要引入這個概念?因為如果針對多個可觀察特徵X進行對比匹配非常困難,所以,可將多維協變量X用一個一維變量——傾向得分P(x)來代替,這樣,研究者就只需要對單一的傾向得分變量進行匹配,從而大大減少了匹配的困難。這個方法最早由Rosenbaum and Rubin(1983)提出。
PSM在stata的實現過程。
首先,如果自變量是連續變量,需要轉換為二元離散變量,比如自變量是企業R&D投入,你需要找到一個臨界值,把R&D投入分為高R&D投入組和低R&D投入組,臨界值包括:平均數,上下三分位數,及其他分位數等,沒有明確規定。在具體做時,可找一篇類似topic的好點的期刊,看看他們是怎麼分的,這樣在分組時也有依據。如果自變量本身就是二元離散變量,更簡單,都不用分組了,直接按0-1分組。在stata上代碼如下
對於離散變量:
gen dv_dum=2 //dv是指變量,dv_dum是指生成自變量的二元變量。replace dv_dum=0 if dv=0 replace dv_dum=1 if dv=1
如果你的自變量本身就是標為0和1,這一步可以不用,但是如果標為1和2或者其他符號,一定要轉換為0和1.
對於連續變量:
quantities dv, gen (dv_dum) nq(3)//根據分位數產生三個虛擬變量,也就是決定選擇一個三分位數(上三分位或者下三分位數)為臨界值。
replace dv_dum=0 if dv_dum==1replace dv_dum=0 if dv_dum==2replace dv_dum=1 if dv_dum==3//意思是把自變量從小到大排列,最大的1/3作為較高的組,標為1,剩餘較小的2/3作為較低的組,標為0.
在這一部完成後,就可以開始匹配了。
set seed 10101gen ranorder=runiformsort ranorderpsmatch2 dv_dum 匹配變量1 匹配變量2 匹配變量3......, outcome (因變量) 匹配方法 ate ties logit common
對上一條代碼的解釋:psmatch2是stata裡的匹配命令,如果沒有安裝需要先安裝:ssc install psmatch2;
匹配變量1 匹配變量2 匹配變量3......是指你認為應該讓兩者一致的變量,比如,你要研究R&D對performance的影響,你就要想想應該讓這兩家公司的哪些特徵一致然後再來比較兩家公司R&D對performance的影響。這裡的匹配變量可以是控制變量,也可以不僅僅是控制變量,看你能想到什麼特徵,能得到什麼數據。具體在選擇匹配變量時,還是要看看類似topic的好點的期刊怎麼選的。
匹配方法:陳強書上介紹了8種方法,你可以每一種都試試,一般來說集中方法匹配的最終結果差異不大。
ate:同時匯報ATE,ATU與ATT的結果
ties :包括所有傾向得分相同的個體
logit: 這次匹配用到的回歸方法是logit回歸。
common:僅對共同取值範圍內的個體匹配,默認對所有個體進行匹配。
對匹配結果的解讀,以陳強書為例:
這是陳強書548頁的一個匹配結果,這張表關注的點不是上面變量的係數符號與顯著性,關注的是ATT的difference值及其T值(實際上這個T值也可不關注)。ATT是個體在幹預狀態下的平均幹預效應,也就是在控制其他匹配變量不變的情況下,自變量從0變為1,因變量的變化。
這裡ATT的difference是1.41,意思是在其他匹配變量一致的情況下,自變量是1與自變量是0導致的因變量的差異是1.41個單位,這就是我們要求的係數。接下來根據T值確定p值,這裡的T值就是個T檢驗,T值1.96對應的p值是0.05,一半要求大於1.96,具體可查看T檢驗統計表。不過Note提示了,這個表格的標準誤差有兩個問題,就是沒有考慮傾向得分為估計所得的事實,即假設傾向得分為真實值,然後求標準誤,並且該標準誤假設同方差,也可能不成立。為此,考慮使用自助法求標準誤,儘管自助標準誤差也未必正確。
set seed 10101bootstrap r(att) r(atu) r(ate), reps(500): psmatch2 dv_dum controls , outcome (Y) ties ate logit common
p值求出來了,大於0.1,不顯著。這不能說明PSM得到了一個不顯著的結果。剛才用的匹配法是一對一匹配,一般來說要把幾種常見匹配都試試。陳強書中就把8種匹配法都試了,其中有幾種得到了顯著的結果。例如用核匹配得到的結果,T值大於1.96,不過這裡也應該用自助法求出控制異方差的p值。
用PSM求係數的步驟已經完成了,還有一步是檢驗匹配結果是否平衡。
pstest Y 匹配變量1 匹配變量2 匹配變量3......, both
還是以陳強書為例,這張表格,要得到的結果是每個匹配變量在匹配後,各匹配變量的均值不存在顯著差異,其標準化誤差小於10%,以age為例,5.6就是匹配後樣本組與控制組的age的標準化差異,小於10%。只有一個變量u74的標準化誤差大於10% ,但是也不大很多,並且只有一個變量,因此這個匹配的平衡性可以接受。平衡性檢驗了可以在匹配前進行,也可以在匹配後進行,只要檢驗結果可接受。
PSM的過程在這裡就可以結束了,不過有的文章還會用匹配後的數據做個回歸,你主分析用的什麼回歸,這裡就用什麼回歸,只不過樣本變了。
匹配後的多元回歸,首先要把不參與匹配的樣本刪除,代碼:drop if _weight==. //_weight是指樣本是否參與了匹配,參與了則標為數字,沒參與則標為點.,因此這一步是把沒參與匹配的樣本去掉。xtset firm yearxtreg Y dv_dum controls, fe r
PSM的使用有一些條件:1.樣本量儘量大,如果樣本太小,會導致處理組許多樣本在控制組中找不到能匹配的樣本,或者能匹配,但是距離很遠,也就是控制組的這個樣本與處理組的這個樣本相對是最匹配的,但是絕對匹配度依然不高。
2.處理組與控制組的傾向得分有較大共同取值範圍,否則會丟失較多樣本,導致匹配的樣本不具備代表性。
需要注意的是,PSM 只能緩解由可觀測變量帶來的內生性問題,無法處理最為關鍵的由不可觀測變量帶來的內生性問題。以上面的例子為例,如果影響企業是否披露R&D投資的因素是不可觀測的,那麼PSM就不適用了。
參考文獻:
Hamilton, B. H., & Nickerson, J. A. (2003). Correcting for endogeneity in strategic management research.Strategic Organization,1(1), 51-78.
Rosenbaum, P. R., & Rubin, D. B. (1983). The central role of the propensity score in observational studies for causal effects.Biometrika,70(1), 41-55.
文章材料整理源於網絡,僅用於學習交流,不作商業用途,如有侵權,請聯繫刪除。
,