SAS Programming

DATA Step, Macro, Functions and more
BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
amanda_cr
Calcite | Level 5

Hi,

 

Here is what my data looks like:

 

Unique ID      Col1      Col2     Col3     Col4

   1                Text1                  Text3

   2                Text1     Text2                 Text4

   3

   4                              Text2     Text3

 

I'm trying to create a new column that lists all the text from column 1 through 4, with commas and a single between the different texts, and that shows nothing when there is no text. Here's what I want:

 

Unique ID     NewCol

   1                Text1, Text3

   2                Text1, Text2, Text4

   3

   4                Text2, Text3

 

I can't seem to figure out a way with out creating ", , ," for line 3, and extra commas in the text strings (this creates a problem since I actually have 29 columns of text I'm trying to put in a text sting in a single column).

 

Any suggestions?

 

Amanda

 

1 ACCEPTED SOLUTION

Accepted Solutions
ballardw
Super User

In a datastep

 

new_col = catx(',',col1, col2,col3,col4);

 

the first argument in the catx function is the character(s) to place between the values indicated. Blanks are suppressed

View solution in original post

3 REPLIES 3
ballardw
Super User

In a datastep

 

new_col = catx(',',col1, col2,col3,col4);

 

the first argument in the catx function is the character(s) to place between the values indicated. Blanks are suppressed

amanda_cr
Calcite | Level 5
Works perfect! Thank you for your help!


amanda_cr
Calcite | Level 5

Works perfect and so simple! Thank you.

sas-innovate-white.png

Special offer for SAS Communities members

Save $250 on SAS Innovate and get a free advance copy of the new SAS For Dummies book! Use the code "SASforDummies" to register. Don't miss out, May 6-9, in Orlando, Florida.

 

View the full agenda.

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
  • 3 replies
  • 3278 views
  • 0 likes
  • 2 in conversation