BookmarkSubscribeRSS Feed
1162
Calcite | Level 5
I'm creating a report using PROC REPORT. One of the report items is an ACROSS variable. I would like to format the report data for that variable, but I can't seem to figure out how. Using format in the DEFINE statement formats the variable itself, but not the resulting count data. Here's a very basic example:

[pre]
data tmp;
input category :$1. @@;
cards;
A B C A B A A
;
run;

proc report data=tmp nowindows;
columns category;
define category / across;
run;
[/pre]

For column 'A', the result is 4, but I'd like it to be formatted as 4.0. I tried adding 'format=8.1' to the DEFINE statement, but that doesn't work.
2 REPLIES 2
Cynthia_sas
Diamond | Level 26
Hi:
If you explicitly add N to the report layout, then you can format it.
cynthia
[pre]
ods html file='c:\temp\use_n.html' style=sasweb;
proc report data=tmp nowindows;
columns ('Category' category),n;
define category / across ' ';
define n / f=8.1 ' ';
run;
ods html close;

[/pre]
1162
Calcite | Level 5
Worked perfectly. Thanks.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

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!

Register Now

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1076 views
  • 0 likes
  • 2 in conversation