Help using Base SAS procedures

report with total

Reply
Frequent Contributor
Posts: 87

report with total

is there is simple or better way to do this kind of report

proc summary data=archdd;
class risk;
output out=x;
run;


data y;
set x;
format risk1 $5.;
risk1 = risk;
if _type_ = 0 then risk1 = 'Total';
drop _type_ risk;
rename risk1 = risk;
run;

I want the report to look like

Risk     _freq_

High     4646

Med      1564    

Lo         1889

Total     8099

Respected Advisor
Posts: 4,934

Re: report with total

You could use proc tabulate.

proc tabulate data=archdd;

class risk;

table risk all, n="";

run;

PG

PG
Super User
Posts: 19,869

Re: report with total

You can use a Multilabel Format (MLF) with proc summary. You should be able to get the right order as well with an order= setting somewhere or preloadfmt option.

Base SAS(R) 9.3 Procedures Guide, Second Edition

data have;

input level count;

cards;

1 1889

2 1564

3 4646

;

run;

proc format;

    value level_fmt (multilabel)

        1 = 'Low'

        2 = 'Medium'

        3 = 'High'

        1,2,3='Total';

run;

proc means data=have mean;

class level /mlf;

var count;

weight count;

format level level_fmt.;

run;

Ask a Question
Discussion stats
  • 2 replies
  • 153 views
  • 0 likes
  • 3 in conversation