data have;
infile datalines;
input ID $6. code $ date $;
datalines;
AP9734 300 6/19/2019
AP9734 301 2/15/2020
run;
WANT:
ID code1 code2 date1 date1
AP9734 300 301 6/19/2019 2/15/2020
not sure why you want to do it, if it's for reporting purpose, you should look into proc report.
But anyways, here is a quick solution
data mrg;
merge have (obs=1 firstobs=1 rename=(code=code1 date=date1))
have (obs=2 firstobs=2 rename=(code=code2 date=date2));
by id;
run;
What if you have 3 or more values the same for id?
Is it always exactly 2?
not sure why you want to do it, if it's for reporting purpose, you should look into proc report.
But anyways, here is a quick solution
data mrg;
merge have (obs=1 firstobs=1 rename=(code=code1 date=date1))
have (obs=2 firstobs=2 rename=(code=code2 date=date2));
by id;
run;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.