The SAS Output Delivery System and reporting techniques

Total show 0 with missings

Reply
N/A
Posts: 0

Total show 0 with missings

Hi,

In a proc report the data is all missing. I would like to show it also as missing, but in the total at the end of the proc report. I would like to show a '0' instead of missing.

How do I do this?

Thierry
Super Contributor
Posts: 260

Re: Total show 0 with missings

Posted in reply to deleted_user
Hi Thierry.
You just have to add a COMPUTE block to your report procedure to "correct" the sum after computing.
[pre]
DATA work.test ;
SET sashelp.class ;
dummyVar = . ;
RUN ;
PROC REPORT DATA = work.test NOWD ;
COLUMNS _ALL_ ;
DEFINE dummyVar / ANALYSIS SUM ;
RBREAK AFTER / SUMMARIZE ;
COMPUTE AFTER ;
dummyVar.sum = COALESCE(dummyVar.sum, 0) ; /* if you're using SAS 9 */
/* IF MISSING(dummyVar.sum) THEN dummyVar.sum = 0 ; */ /* in previous versions */
ENDCOMP ;
RUN ;
[/pre]
Regards.
Olivier
N/A
Posts: 0

Re: Total show 0 with missings

Hi Oliver,

This works great!!!
Thanks alot!

Thierry
SAS Super FREQ
Posts: 8,868

Re: Total show 0 with missings

Hi, Olivier:
That's a good solution. This is another that doesn't require a compute block, only MISSING in the PROC REPORT statement:
[pre]
DATA work.test ;
SET sashelp.class ;
dummyVar = . ;
RUN ;

options missing=0;

PROC REPORT DATA = work.test NOWD missing;
COLUMNS _ALL_ ;
DEFINE dummyVar / ANALYSIS SUM ;
RBREAK AFTER / SUMMARIZE ;
RUN ;

options missing=.;
[/pre]

There's usually more than one way to do something in SAS!
cynthia
Ask a Question
Discussion stats
  • 3 replies
  • 137 views
  • 0 likes
  • 3 in conversation