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 lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.