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
You could use proc tabulate.
proc tabulate data=archdd;
class risk;
table risk all, n="";
run;
PG
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;
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.