I want to display a simple pre-fix for decimal numbers contained within a variable based on the value of those decimal numbers.
I have a series of numbers on [0,1). if the numbers are less than 0.001, then I want the number to display as '<.001'. Otherwise, I want to display the original value with an equal sign in front of it ('=[original number]');
I provide a sample dataset as well as the code that I used to try to accomplish this task.
The PRINT procedure output shows that I am partly there, but not quite. Basically, to get what I am after, the output would need to display '<0.001' instead of '<0.000' for the first 2 observations. The last 3 observations output the way I want them to.
Hope some one can help me.
Thanks.
proc format;
picture numbers
low-<.001 = '000009.999'(prefix='<' mult=1000)
.001-high = '000009.999'(prefix='=' mult=1000);
run;
data have;
input numbers;
datalines;
0.0000
0.0001
0.0010
0.0200
0.0500
;
proc print data=have;
format numbers numbers.;
run;
PICTURE formats support the NOEDIT option:
So you could code your format in this (untested) fashion:
proc format;
picture numbers
low-<.001 = '<.001' (noedit)
.001-high = '000009.999'(prefix='=' mult=1000);
run;
You may need to play with the spacing to get all values to line up properly.
PICTURE formats support the NOEDIT option:
So you could code your format in this (untested) fashion:
proc format;
picture numbers
low-<.001 = '<.001' (noedit)
.001-high = '000009.999'(prefix='=' mult=1000);
run;
You may need to play with the spacing to get all values to line up properly.
Hi.
Thanks for your help -- your solution worked perfectly for me.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.