BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
GreggB
Pyrite | Level 9

I found the code I think I need and made a few edits but my new vars are numeric rather than char. I need char vars;

data I have:

sp

doe, john;doe, jane;doe, jack

 

data i want:

sp1                   sp2            sp3

doe, john         doe, jane   doe, jack

 

 

Code:

data betty3;
set betty2;
array parsed_vars(*) sp1-sp3;
i=1;
do while(scan(sp, i, ";") ne "");
parsed_vars(i) =scan(sp, i, ";");
i+1;
end;
run;

1 ACCEPTED SOLUTION

Accepted Solutions
art297
Opal | Level 21

Specify that the array is character. e.g.

 

array parsed_vars(*)  $25. sp1-sp3;

Art, CEO, AnalystFinder.com

View solution in original post

2 REPLIES 2
art297
Opal | Level 21

Specify that the array is character. e.g.

 

array parsed_vars(*)  $25. sp1-sp3;

Art, CEO, AnalystFinder.com

collinelliot
Barite | Level 11

You need to specify that your array is character with a "$"

 

You also will probably want to assign some appropriate length to the variables you created or you might see truncation.

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


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