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;
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.