BookmarkSubscribeRSS Feed
ursula
Pyrite | Level 9


HI there,

I tried to do grouping observations as follow:

The table I have is:

customer_id          product_ID

101                         1a

101                         2b

101                         3a 

102                          2a

102                         4b

103                         1a

the out put I want is:

customer_id          product_id

101                      1a, 2b, 3a

102                     2a, 4b

103                     1a

Any help will be very appreciate.

thank you in advance

1 REPLY 1
ChandraReddy
Calcite | Level 5

Hi,

Try the below code:

data table;

     set table;

     by customer_id product_id;

run;

data table2;

     set table;

     by customer_id product_id;

     if first.customer_id then final_product = product_id;

     else do;

          retain final_product;

          final_product = catx(',',final_product,product_id);

     end;

     if last.customer_id;

run;

...

Chandra

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

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!

Register now

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
  • 1 reply
  • 771 views
  • 0 likes
  • 2 in conversation