Contributor
Posts: 29

Percent w.d Format

Hi All,

To read the below percent field used this format which works fine.But I want to know how exactly the percentw.d format is woking internally because i have not understood how it is storing and displaying the percent data with some examples.

informat percentofmarks percent6.;

format percentofmarks percent8.2;

---------------------------------------------------

studentname Standard percentageofmarks

syed 6 67.25%

----------------------------------------------------

Thank you

Super Contributor
Posts: 307

Re: Percent w.d Format

The percentw.d informat instructs SAS to read data containing percentages as numeric. Refer to https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000204437.htm

The percentw.d format does the opposite, it writes numeric data as percentages. Refer to https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000205182.htm

Super User
Posts: 8,089

Re: Percent w.d Format

Percentages are stored as the number you would use in mathematical operations. So 50% is stored as 0.5.

36   data test;

37     informat percentofmarks percent6.;

38     format percentofmarks percent8.2;

39     input studentname \$ Standard percentofmarks ;

40     put percentofmarks = best12. ;

41     put percentofmarks = percent8.2 ;

42

43   cards;

percentofmarks=0.6725

percentofmarks=67.25%

Valued Guide
Posts: 2,191

Re: Percent w.d Format

beware the D in any INFORMATw.d

INPUT will assume the last "d" digits are decimal places even when you have no dot!

158  data;

159  input percD percent6.1 @1 perc_noD percent6. @1 str_ \$ ;

160  put (str_ perc: perc( \$8. 2*percent9.1  2*best9.) ;

161  cards;

12.1%      12.1%    12.1%     0.121    0.121

12%         1.2%    12.0%     0.012     0.12

NOTE: The data set

the D in informatW.D  is really only there for binary informats which cannot present the dot

Discussion stats
• 3 replies
• 670 views
• 0 likes
• 4 in conversation