BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
SASbeginner4
Fluorite | Level 6

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

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
Tom
Super User Tom
Super User

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;

View solution in original post

6 REPLIES 6
PaigeMiller
Diamond | Level 26

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?

--
Paige Miller
SASbeginner4
Fluorite | Level 6

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                                                           

 

PaigeMiller
Diamond | Level 26

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.

--
Paige Miller
Tom
Super User Tom
Super User

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;
SASbeginner4
Fluorite | Level 6

Thank you very much, it works

ballardw
Super User

@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?

SAS Innovate 2025: Register Now

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!

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
  • 6 replies
  • 1105 views
  • 2 likes
  • 4 in conversation