DATA Step, Macro, Functions and more

Round function confusion

Reply
Occasional Contributor
Posts: 9

Round function confusion

[ Edited ]

I have optained a mix of whole numbers(eg. 1, 2, 3) and non whole numbers (something like 0.12345678, 9.123456) by using proc means. Now in my dataset, I tried using round function, but that rounds only the non whole number (eg 0.1 or 9.1) nut whole numbers stay the same eg.(1, 2, 3).

 

What I want is :

1.0

2.0

3.0

0.1

9.1

 

My code: variable_new= strip(round(variable_old,0.1));

 

ANy help is greatly appreciated.

Trusted Advisor
Posts: 1,831

Re: Round function confusion

Have you used round as:

    var = round(var,0.1);

and assign:  format var 5.1;   /* one decimal digit. addapt the length */

 

If you still have issues, post your code.

SAS Super FREQ
Posts: 497

Re: Round function confusion

The round function works correctly.  An integer rounded to 0.1 is that integer.  I suspect that you do not want to round at all.  Rather, use a format like 5.1 (or w.1 for a larger width w) to keep the original precision but display one decimal place.

Ask a Question
Discussion stats
  • 2 replies
  • 175 views
  • 3 likes
  • 3 in conversation