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;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
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.
Ready to level-up your skills? Choose your own adventure.