사이트맵  |  Contact Us
 
홈 > SAS Stories > SAS 질문과 답변
PSMATCH PROCEDURE ERROR 2019.02.12
서민석 442 0
http://www.mysas.co.kr/sas_club/b_answer.asp?B_NO=11025&gotopage=1&cmd=content

우선 작성해주신 코드는 optimal matching method 중 fixed ratio matching 방법을 이용, k=1로 지정하여 각 실험군에 하나(k=1)의 대조군을 최적으로 매칭시켜주는 코드입니다.

 

오류를 확인해보면 

ERROR: A feasible optimal fixed ratio matching that has the specified parameters does not exist.​로

해당 데이터에서 코드에서 지정해주신 파라미터로는 적합한 optimal fixed ration matching을 찾을 수 없는 것으로 확인됩니다.

 

저는 질문자님의 분석방향을 고려하여 다음 matching method중에 하나를 선택하셔서 진행하시는 것을 제안드립니다.

METHOD= 옵션을 조정함으로써 method를 선택하실 수 있습니다.

 

1. Greedy Nearest Neighbor Matching

(METHOD=GREEDY 옵션으로 선택)

이 방법은 각 실험군 유닛의 propensity score와 가장 유사한 propensity score를 가진 대조군을 선택하여 매칭시킵니다. 순차적으로 그리고 replacement없이 이루어지는 특성이 있습니다.

k= 옵션을 통해 각 실험군에 몇개의 대조군을 매칭시킬지 조정할 수 있습니다.

 

2. Replacement Matching

(METHOD=REPLACEMENT 옵션으로 선택)

앞선 실험군에서 선택되었던 대조군들 또한 고려하여 매칭합니다.

k= 옵션을 통해 각 실험군에 몇개의 대조군을 매칭시킬지 조정할 수 있습니다.

 

3. Optimal Matching

모든 매칭에서 propensity score​의 총 절대 차이를 최소화하는 방향으로 모든 매칭을 동시에 선택하고, 아래 3가지 종류가 존재합니다

fixed ratio matching (METHOD=OPTIMAL 옵션으로 선택) : 각 실헙군에 매칭시킬 대조군의 수를 고정

variable ratio matching ( METHOD=VARRATIO 옵션으로 선택): 각 실험군에 하나 혹은 그 이상의 대조군을 매칭 

full matching (METHOD=FULL 옵션으로 선택): 하나 이상의 실험군과 하나 이상의 대조군을 매칭 

 

 

예를 들어 저는 Greedy Nearest Neighbor Matching​ method를 선택하여 매칭을 시켜보았습니다.

 

예시 코드

 

PROC PSMATCH DATA=VM;

CLASS GP SEX NOR;

PSMODEL GP (TREATED='1') = SEX A_SCORE NOR;

MATCH METHOD = greedy (K=1) STAT=LPS EXACT=SEX CALIPER=0.25;

assess lps var=(SEX A_SCORE NOR) / weight=none plots=(boxplot barchart);

OUTPUT OUT(OBS=MATCH)=OUTGS LPS=_LPS MATCHID=_MATCHID;

RUN;​ 

 

답변이 도움이 되셨으면 좋겠습니다.

추가로 질문있으시면 언제든지 질문글을 작성해주세요.

감사합니다.

 

 

 

---------------------------------------[ 원 문 ]---------------------------------------

 

 

 

EXAMPLE.csv 파일에 있는 내용으로 아래와 같이 procedure를 짰는데, 자꾸 가능한 match가 없다는 오류 메세지가 뜹니다.


PROC PSMATCH DATA=VM;
CLASS GP SEX NOR;
PSMODEL GP (TREATED='1') = SEX A_SCORE NOR;
MATCH METHOD=OPTIMAL (K=1) STAT=LPS EXACT=SEX CALIPER=0.25;
assess lps var=(SEX A_SCORE NOR) / weight=none plots=(boxplot barchart); 
OUTPUT OUT(OBS=MATCH)=OUTGS LPS=_LPS  MATCHID=_MATCHID;
RUN;​

 

 

ERROR: A feasible optimal fixed ratio matching that has the specified parameters does not exist.

 

Categorical variables만 넣어도 matching이 되지 않습니다.

이럴 경우 어떤 부분을 수정하면 매치가 될 수 있을지요..?

 

답변 부탁드립니다.

감사합니다.

 

 
 
휴대폰 번호
휴대폰 인증번호
 
 문의 드립니다
 PSMATCH PROCEDURE ERROR