Hello to everyone; please help me to write a program to Take n’th character from n’th word and keep in separate variables using arrays.
Take n’th character from n’th word and keep in separate variables
So if the source variable has a length of 200 you will need 200 new one character variables.
data want;
set have;
array c [200] $1 ;
do i=1 to lengthn(string);
c[i]=char(string,i);
end;
run;
Show us what you have tried so far.
Also, I'm not really clear what that means: "Take n’th character from n’th word and keep in separate variables". Can you give examples?
And why do we have to do this with arrays?
There is a string, for example, "I had been caught going through a traffic light on the change." and there is necessary to keep every letter as a variable, for example var1 var2 var3 var4 and so on till the end.
I h a d
Why? I can't really see a point to taking a text string and separating it into individual letters.
And I ask again: show us what you have tried.
So if the source variable has a length of 200 you will need 200 new one character variables.
data want;
set have;
array c [200] $1 ;
do i=1 to lengthn(string);
c[i]=char(string,i);
end;
run;
Thank you very much, it works
@SASbeginner4 wrote:
There is a string, for example, "I had been caught going through a traffic light on the change." and there is necessary to keep every letter as a variable, for example var1 var2 var3 var4 and so on till the end.
I h a d
What will you do after you have this likely to be obnoxious number of variables?
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.
Ready to level-up your skills? Choose your own adventure.