proc sort data=sample; by id date; run; data sample; set sample; format lag_admit_dt date9.; by id; lag_admit_dt=lag(date); diff=intck('days',lag_admit_dt,date); if first.id then do; lag_admit_dt=admit_dt; diff=1; tag=''; end; if diff>1 then tag='*'; retain tag; run; data First_Discharge_dt (keep=id date); set sample (where = (tag is missing) ) ; by id; if last.id; run; NOTE: I added ID=4 for patient with 1 day admission date only.
... View more