Hi there;
i need a help please:
my data is like this:
id ne dv
v 01 1 12/03/2008
v 01 1 12/03/2008
v 01 1 12/03/2008
v 01 1 12/03/2008
v 01 3 05/12/2012
v 01 3 05/12/2012
v 01 3 05/12/2012
v 02 1 31/01/2009
v 02 1 31/01/2009
v 02 1 31/01/2009
v 02 2 05/04/2011
v 02 2 05/04/2011
v 02 2 05/04/2011
v 02 2 05/04/2011
v 02 3 11/09/2003
v 02 3 11/09/2003
v 08 2 03/06/2014
v 08 2 03/06/2014
what i want:
id ne dv dv_1 dv_2 dv_3
v 01 1 12/03/2008 12/03/2008 . 05/12/2012
v 01 1 12/03/2008 12/03/2008 . 05/12/2012
v 01 1 12/03/2008 12/03/2008 . 05/12/2012
v 01 1 12/03/2008 12/03/2008 . 05/12/2012
v 01 3 05/12/2012 12/03/2008 . 05/12/2012
v 01 3 05/12/2012 12/03/2008 . 05/12/2012
v 01 3 05/12/2012 12/03/2008 . 05/12/2012
v 02 1 31/01/2009 31/01/2009 05/04/2011 11/09/2003
v 02 1 31/01/2009 31/01/2009 05/04/2011 11/09/2003
v 02 1 31/01/2009 31/01/2009 05/04/2011 11/09/2003
v 02 2 05/04/2011 31/01/2009 05/04/2011 11/09/2003
v 02 2 05/04/2011 31/01/2009 05/04/2011 11/09/2003
v 02 2 05/04/2011 31/01/2009 05/04/2011 11/09/2003
v 02 2 05/04/2011 31/01/2009 05/04/2011 11/09/2003
v 02 3 11/09/2003 31/01/2009 05/04/2011 11/09/2003
v 02 3 11/09/2003 31/01/2009 05/04/2011 11/09/2003
v 08 2 03/06/2014 . 03/06/2014 .
v 08 2 03/06/2014 . 03/06/2014 .
ne= measurement order
dv = date of a measurement
therefore, the table want should contain 3 new variables (dv_1 dv_2 and dv_3).
dv_1 contains the dates that correspond to ne= 1;
dv_2 contains the dates that correspond to ne= 2;
dv_3 contains the dates that correspond to ne= 3;
help me please.
Try this:
proc sql;
create table u as select unique * from have order by id;
quit;
proc transpose data=u out=v(drop=_name_) prefix=dv_;
by id;
id ne;
var dv;
run;
data want;
merge have v;
by id;
run;
Try this:
proc sql;
create table u as select unique * from have order by id;
quit;
proc transpose data=u out=v(drop=_name_) prefix=dv_;
by id;
id ne;
var dv;
run;
data want;
merge have v;
by id;
run;
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.