data Have;
input id $ (Date1 Date2 Date3 Date4) (: mmddyy10.);
format Date1 Date2 Date3 Date4 mmddyy10.;
cards;
Person1 7/18/2015 7/15/2015 7/27/2015 7/18/2015
Person2 5/03/2015 . 5/04/2015 5/10/2015
Person3 . . 6/10/2015 6/12/2015
Person4 11/12/2015 11/14/2015 11/30/2015 11/07/2015
;
run;
data want;
set have;
array x{*} date1-date4;
array y{*} _date1-_date4;
call sortn(of date1-date4);
n=0;
do i=1 to dim(x);
if not missing(x{i}) then do;n+1;y{n}=x{i};end;
end;
drop i n date1-date4;
format _Date1-_Date4 mmddyy10.;
run;
... View more