Hello
I have character strings which including percentage and numbers. how do I convert them into numeric data?
my data is
var
45.5%
34
23.64%
23
44.56%
798
I use the code:
data a;
set a;
if var=:"%" then var1=input(var,percent8.);
else var1=input(var,best8.);
run;
But it does not work.
Thanks a lot!
I tried as below and it works
data have;
input var$10.;;
cards;
45.5%
34
23.64%
23
44.56%
798
;
data want;
set have;
if index(var,'%') then new=input(var,percent.);
else new=input(var,best.);
run;
I tried as below and it works
data have;
input var$10.;;
cards;
45.5%
34
23.64%
23
44.56%
798
;
data want;
set have;
if index(var,'%') then new=input(var,percent.);
else new=input(var,best.);
run;
The =: only checks if the variables start with that character string, not contains. ie does it start with a percentage sign. To check if hte variable contains a % sign you would use FIND or INDEX.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.