[PSM] SAS Syntax

SAS 성향점수매칭 (PSM) 예제

성향점수매칭(PSM)은 관찰연구에서 처리군과 대조군 간의 공변량 균형을 맞춰 인과관계를 추정하는 데 사용됩니다. SAS에서는 PROC LOGISTICPROC PSMATCH를 활용할 수 있습니다.


1. 성향점수 추정

proc logistic data=mydata descending;
   class gender race / param=ref;
   model treat = age gender race income education;
   output out=ps_data p=pscore;
run;


2. 성향점수 매칭

방법 1: PROC PSMATCH

proc psmatch data=ps_data region=cs;
   class treat;
   psmodel treat(Treated='1') = age gender race income education;
   match method=nearest(k=1) caliper=0.2;
   assess lps var=(age gender race income education);
   output out=matched_data matchid=_MatchID;
run;

주요 옵션 설명

  • method=nearest(k=1): 1:1 최근접 이웃 매칭
  • caliper=0.2: 성향점수 차이 허용 범위
  • output: 매칭된 데이터 저장


3. 매칭 후 결과 분석

proc means data=matched_data;
   class treat;
   var outcome;
run;

proc ttest data=matched_data;
   class treat;
   var outcome;
run;

참고: 매칭 후 공변량 균형 확인은 assess 옵션으로 확인 가능합니다.


마무리

PSM은 비실험 데이터에서 인과추정을 도울 수 있는 강력한 도구입니다. SAS의 PROC PSMATCH는 편리하고 유연하게 매칭을 수행할 수 있도록 도와줍니다.


0 댓글