## how to convert a string with potential to numeric

Frequent Contributor
Posts: 102

# how to convert a string with potential to numeric

Hello,

I have strings need to convert to numeric.

data test;

input value \$12.;

datalines;

0.4567

2.678E-2

3.5679E-3

-0.1987

0.03489

0.5634

run;

how to get the numeric values. Thanks!

Super User
Posts: 24,010

## Re: how to convert a string with potential to numeric

If you remove the \$12. SAS reads in the values as numerics accurately.

If you need to convert it, use INPUT with a best format, but it's more efficient to just delete the \$12 in my opinion.

``````data test;
input value \$12.;
value_num =input(value, best12.);
datalines;
0.4567
2.678E-2
3.5679E-3
-0.1987
0.03489
0.5634
;
run;``````
Super User
Posts: 13,941

## Re: how to convert a string with potential to numeric

If you have a data set and want to add a numeric variable:

```data work.want;
set test;
value_num = input(value,best.);
run;```

If you want to keep the same name for the variable you need a bit more as you cannot change the type of a variable once it is set.

```data work.want;
set test (rename= (value=oldvalue) );
value = input(oldvalue,best.);
drop oldvalue;
run;```
PROC Star
Posts: 631

## Re: how to convert a string with potential to numeric

Hi,

Give the appropriate informat in the input statement.

``````data test;
format value 12.4;
input value e12.5;
datalines;
0.4567
2.678E-2
3.5679E-3
-0.1987
0.03489
0.5634
;
run;``````

Thanks,

Suryakiran

Thanks,
Suryakiran
Super User
Posts: 8,279

## Re: how to convert a string with potential to numeric

You can use the INPUT() function to convert a string to a number. The normal numeric informat will work with those strings.

``num_value = input(value,12.);``

Discussion stats
• 4 replies
• 187 views
• 1 like
• 5 in conversation