PROC FORMAT for percentage format

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 15
Accepted Solution

PROC FORMAT for percentage format

I used following syntex to format the number to percentage. However for number of 0.858369, it gives 85%. Is there a way to get correct percetage of 0.85%?

proc format library = fmt;

picture pctfmt low-high='000.00%';

run;

Thanks!

Regards,

Weizhong


Accepted Solutions
Solution
‎10-19-2013 01:16 AM
Trusted Advisor
Posts: 1,137

Re: PROC FORMAT for percentage format

Posted in reply to weizhongma

Hi,

Please try the below picture format

proc format;

picture val low-high='9.99%';

run;

data class;

    val=put(0.858369,val.);

run;

Thanks,

Jagadish

Thanks,
Jag

View solution in original post


All Replies
Solution
‎10-19-2013 01:16 AM
Trusted Advisor
Posts: 1,137

Re: PROC FORMAT for percentage format

Posted in reply to weizhongma

Hi,

Please try the below picture format

proc format;

picture val low-high='9.99%';

run;

data class;

    val=put(0.858369,val.);

run;

Thanks,

Jagadish

Thanks,
Jag
Occasional Contributor
Posts: 15

Re: PROC FORMAT for percentage format

Posted in reply to Jagadishkatam

Thanks! Jagadish. 

However my data mixed of numbers such as 20, 100 and 0.858369. If there way to wark around? Thanks!


Trusted Advisor
Posts: 1,137

Re: PROC FORMAT for percentage format

Posted in reply to weizhongma

in that case you can use the below picture format

proc format fmtlib;

    picture val low-<1='9.99%'

                1<-high='009%';

run;

Thanks,

Jagadish

Thanks,
Jag
Respected Advisor
Posts: 3,799

Re: PROC FORMAT for percentage format

Posted in reply to Jagadishkatam

What about 1.

Trusted Advisor
Posts: 1,137

Re: PROC FORMAT for percentage format

Posted in reply to data_null__

Thank you data_null_, please find below my corrected code

proc format fmtlib;

    picture val low-<1='9.99%'

               1-high='009%';

run;

Thanks,

Jagadish

Thanks,
Jag
Respected Advisor
Posts: 3,799

Re: PROC FORMAT for percentage format

Posted in reply to Jagadishkatam

What about the sign if the value is negative?

Trusted Advisor
Posts: 1,137

Re: PROC FORMAT for percentage format

Posted in reply to data_null__

Thank you data_null_, updated the picture format to consider the negative values

proc format fmtlib;

    picture val low-<0='09.99%' (prefix='-')

                0-<1='09.99%'

               1-high='009%';

run;

Thanks,

Jagadish

Thanks,
Jag
Respected Advisor
Posts: 3,799

Re: PROC FORMAT for percentage format

Posted in reply to weizhongma

You need to RTM.  Look for the round option.  You will also need more digit selectors for the larger numbers and what about negative.

🔒 This topic is solved and locked.

Need further help from the community? Please ask a new question.

Discussion stats
  • 8 replies
  • 947 views
  • 0 likes
  • 3 in conversation