BookmarkSubscribeRSS Feed
alagiejatta
Calcite | Level 5

I have numerical lab results that come in as character values (eg 0.1, 1.5 etc). I wanted to multiply this values by 1000 and keep them as character values.

2 REPLIES 2
Tom
Super User Tom
Super User

Informats convert text to values.  Formats convert values to text.

data want;
  set have;
  string = put(1000*input(string,32.),best32.-L);
run;

Change HAVE , STRING and WANT to match the names of the datasets and variable you have.

If STRING is shorter than 32 bytes long then adjust the format specification used with the PUT() function accordingly.  You don't need to adjust the informat since the INPUT() function dose not care if the width used in the informat specification is larger than the length of the string being read.

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

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
  • 2 replies
  • 444 views
  • 2 likes
  • 3 in conversation