DATA Step, Macro, Functions and more

Keeping only part of a variable that exists after the first space

Accepted Solution Solved
Reply
Contributor
Posts: 23
Accepted Solution

Keeping only part of a variable that exists after the first space

I have the following data:

Sports
11 Foot Ball
112 Soccer and golf
2345 basketball
12 Table tennis

 

But I want to keep only the part after the first space. ie:

 

Sports
Foot Ball
Soccer and golf
basketball
Table tennis

 

How do I go about doing this?


Accepted Solutions
Solution
2 weeks ago
Occasional Contributor
Posts: 15

Re: Keeping only part of a variable that exists after the first space

Final_Col in below dataset has the target output.

DATA TEMP;
INPUT Sports $1-35;
Fst_Col= Length(Scan(STRIP(Sports),1));
Final_col= SUBSTR(Sports,Fst_col+1);
DROP Fst_Col;
CARDS;
11 Foot Ball
112 Soccer and golf
2345 basketball
12 Table tennis
;

RUN;

View solution in original post


All Replies
Solution
2 weeks ago
Occasional Contributor
Posts: 15

Re: Keeping only part of a variable that exists after the first space

Final_Col in below dataset has the target output.

DATA TEMP;
INPUT Sports $1-35;
Fst_Col= Length(Scan(STRIP(Sports),1));
Final_col= SUBSTR(Sports,Fst_col+1);
DROP Fst_Col;
CARDS;
11 Foot Ball
112 Soccer and golf
2345 basketball
12 Table tennis
;

RUN;

PROC Star
Posts: 1,561

Re: Keeping only part of a variable that exists after the first space

@BenBrady You just need one assignment

 

data have;
input sports $20.;
cards;
11 Foot Ball
112 Soccer and golf
2345 basketball
12 Table tennis
;

data want;
set have;
sports=substr(sports,anyspace(sports)+1);
run;
☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 117 views
  • 3 likes
  • 3 in conversation