延續上一章節,本篇將透過官方範例檔,簡介程序實際操作的狀況,以及程序指令代表的意思。

  首先,下圖列出範例檔案的前10筆觀察值。StudentID為收案編號;Music在此作為研究組別,分為YesNo兩組,在此Yes組視為治療組(Treated)No組視為對照組(Control)Gender為類別型共變數;Absence為連續型共變數。

 

1.jpg

 

  官方提供範例程序碼如下圖所示,以下將依序介紹各程序碼的含意。

 

2.jpg

 

REGION =此項指令是指研究者要納入配對的樣本範圍,等號右邊的指令選擇有ALLOBSCSTREATED三種,預設為TREATED

  REGION=ALLOBS,此操作之下會將School資料集中所有的觀察值皆納入配對範圍,不做任何篩選。

  REGION=TREATED為預設值,此操作之下會先在School資料集先篩選出要做配對的範圍,預設為對照組的傾向分數邏輯值與治療組傾向分數邏輯值的差距範圍,必須在傾向分數邏輯值標準差的0.25倍以內才進入後續的配對。

  REGION=CS會保留兩組最寬的差距做後續的配對,此法之下跟ALLOBS似乎沒有什麼差異。

 

CLASS 宣告要跑傾向分數的類別變項。

Psmodel 為傾向分數的模型,是一種邏輯斯迴歸。此項建模指令「psmodel Music(Treated='Yes')= Gender Absence;」意即Music為依變項,指定Yes組為Treated,等號右邊的GenderAbsence為自變項。

Method=greedy(k=1),此指令撰寫於match之下,指定配對的方式為greedy法。(k=1)在此表示1Yes(Treated)1No(Control),如果要做1:n的配對,需改寫為(k=n)

exact=,此項指令能使研究者指定某些項目做到完全一致的精確配對,範例中exact=Gender便是指定在Gender這個變項上做精確配對。

caliper=n,此項指令為限定兩組傾向分述邏輯值的差距,必須在傾向分數邏輯值標準差的n倍之內才能配在一起。在此範例中,caliper=0.5,意即0.5倍才能配在一起。由於範例檔案筆數不多,所以caliper設為0.5,一般在樣本數充足之下,為了使配對達到良好的配對品質,caliper會設為0.2

assess lps var=(Gender Absence),在assess之下有些設定計算兩組差異距離的演算法,在範例寫法中,指定估算兩組差距的方式為傾向分數邏輯值(logit of propensity score, lps),計算兩組差距會用到的變項放在var=()內。

plots=all,輸出配對品質比較的一些圖表。

weight=none,在此範例中,因為並非使用加權配對法,因此option 設為none

最後一行指令,output out(obs=match)=OutEx4 matchid=_MatchID,此指令在output之下,輸出配對後的資料檔。「out(obs=match)」意即限定輸出的資料檔只存取成功配對的觀察值,最後將輸出的資料檔存為OutEx4。「matchid=_MatchID」意即在輸出的資料檔(OutEx4)中創造一個命名為_MatchID的欄位,給予互為配對組合的人相同編號。

 

   111.jpg

 

配對後輸出的資料檔(OutEx4)中取前10筆觀察值如下圖所示,經過程序執行後,資料檔新增加3個欄位,分別是_PS__MATCHWGT__MatchID

_PS_為存出的傾向分數。

_MATCHWGT_為加權數,由於指令設定weight=none,因此加權數皆為1

_MatchID為配對編號,由下圖可見,兩組被配對在一起的人會有相同的配對編號,未來進行配對統計的分析時會使用到配對編號,因此務必存出此項喔。

 

3.jpg

 

  本篇針對指令部分做簡單介紹,下一篇將繼續簡單介紹該程式執行後所提供的統計報表跟圖表。

關鍵字:配對, 傾向分數配對, matching, propensity score matching, Greedy nearest neighbor, PSMATCH

參考文獻

SAS Institute Inc. 2016. SAS/STAT® 14.2 User’s Guide. Cary, NC: SAS Institute Inc.

 

arrow
arrow
    全站熱搜

    晨晰部落格新站 發表在 痞客邦 留言(1) 人氣()