BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
soumri
Quartz | Level 8

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.

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
PGStats
Opal | Level 21

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; 
PG

View solution in original post

2 REPLIES 2
PGStats
Opal | Level 21

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; 
PG
soumri
Quartz | Level 8

dear 

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1121 views
  • 1 like
  • 2 in conversation