How about the following code data have ; set have; count=1; run; proc sort data=have; by PAT ENC ADMIT ; run; proc summary data=have missing nway; by PAT ENC ADMIT ; var EM IP OP count; output out=want(drop=_:) sum=; run; data want; set want; format result $20.; if EM=1 then do; if IP=1 and OP=0 then result='EM to IP'; else if IP=1 and OP=1 then result='IP to OP'; else if IP=0 and OP=1 then result='EM to OP'; else if IP=0 and OP=0 then result='EM to DISCHARGE'; end; run; proc sort data=want out=want1(keep=PAT ENC ADMIT result); by PAT ENC ADMIT ; run; data final; merge have(in=a) want1(in=b); by PAT ENC ADMIT ; if a; run;
... View more