We are trying to concantenate column Items based on another column, Shopper_ID. Any suggestions on how we can achieve this?
Current result
Shopper_ID Items
1 keyboard
1 mouse
1 notebook
2 keyboard
2 screen protector
3 case
Desired result
Shopper_ID Items
1 keyboard, mouse, notebook
2 keyboard, screen protector
3 case
data have;
input Shopper_ID Items $40.;
cards;
1 keyboard
1 mouse
1 notebook
2 keyboard
2 screen protector
3 case
;
run;
data want;
length want $ 2000;
do until(last.Shopper_ID);
set have;
by Shopper_ID ;
want=catx(',',want,items);
end;
drop items;
run;
If you're working with the GUI, then you would first Transpose the data using a TRANSPOSE task and then you can aggregate them using the function CATX in a query and using a calculated column.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.