Hello,
I am wanting to take a table in SAS to go from looking like this:
Group_Num | Name (Char) |
1 | bob |
1 | sally |
1 | chris |
1 | molly |
1 | sam |
2 | bobby |
2 | beth |
2 | collin |
2 | sam |
To looking like this
Group_Num | Name |
1 | bob, sally, chris, molly, sam |
2 | bobby, beth, collin, sam |
Any advice on how to do this? I know concat is for when you do this to columns in one row. But I was unsure of how else to refer to this. Thanks in advanced for any help.
This ended up sending it into repeating the same combination of lines over and over again for each Group_Num. I found this code that was able to run it correctly. From: https://communities.sas.com/t5/SAS-Enterprise-Guide/Concatenating-a-column-based-on-another-column/t...
data want;
length want $ 2000;
do until(last.Shopper_ID);
set have;
by Shopper_ID ;
want=catx(',',want,items);
end;
drop items;
run;
Try this
data have;
input Group_Num Name $;
datalines;
1 bob
1 sally
1 chris
1 molly
1 sam
2 bobby
2 beth
2 collin
2 sam
;
data want;
set have(rename = name = n);
by Group_Num;
length name $200;
name = catx(', ', name, n);
if last.Group_Num;
retain name;
drop n;
run;
This ended up sending it into repeating the same combination of lines over and over again for each Group_Num. I found this code that was able to run it correctly. From: https://communities.sas.com/t5/SAS-Enterprise-Guide/Concatenating-a-column-based-on-another-column/t...
data want;
length want $ 2000;
do until(last.Shopper_ID);
set have;
by Shopper_ID ;
want=catx(',',want,items);
end;
drop items;
run;
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.