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.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

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