data have;
input RecordNumber DOS :mmddyy10.;
format DOS mmddyy10.;
datalines;
1 1/1/2006
2 6/5/2007
1 1/24/2009
3 7/1/2011
4 5/22/2012
3 8/14/2010
;
run;
proc sort data=have; by RecordNumber DOS;run;
data have;
set have;
by RecordNumber;
retain first_dos var 1;
if first.RecordNumber then first_dos=DOS;
year=year(DOS);
format first_dos date9.;
run;
proc transpose data=have out=temp(drop=_name_) prefix=_;
by RecordNumber first_dos;
id year;
var var;
run;
proc stdize data=temp out=want missing=0 reponly;run;
Xia Keshan
... View more