Hi SAS Experts,
I looked at the round function explanation and read that a ,1 should result in no decimals but my calculation reads 100,0 now and not just 100.
proc sql ;
CREATE TABLE mytable AS
SELECT
ROUND((SUM(numberA)*100)/SUM(numberB),1) AS percent_ab
FROM aaaa;
QUIT;
Well it's rounded but you're looking to control the display.
proc sql ;
CREATE TABLE mytable AS
SELECT
ROUND((SUM(numberA)*100)/SUM(numberB),1) AS percent_ab format=8.
FROM aaaa;
QUIT;
Not quite sure exactly what you mean by "calculation reads 100,0"
Round is applied AFTER the results of
(SUM(numberA)*100)/SUM(numberB)
The FORMAT of the varaible percent_ab could be forcing the appearance of decimals. If the format is something like 5.1 it will force the appearance of 1 decimal, showing a 0 when none are actually present.
Well it's rounded but you're looking to control the display.
proc sql ;
CREATE TABLE mytable AS
SELECT
ROUND((SUM(numberA)*100)/SUM(numberB),1) AS percent_ab format=8.
FROM aaaa;
QUIT;
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
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.