proc report nowd data= r2011 missing split='|';
column
cmpgn_cat
apprate;
define cmpgn_cat / '' style(column)={font_face=calibri background=white foreground=black font_size=1} format=$catfmt.;
define apprate / style(column)={font_face=calibri background=white foreground=black font_size=1} order descending format=percent8.2 '';
compute before / style={font_weight=bold font_face=calibri font_size=1 foreground=white background=cx808000 frame=void borderwidth=0 bordercolor=cx000000};
linetext = 'Recapture/Acquisition';
line @1 linetext $30.;
endcomp;
run;
how do i get proc report to display all values? as in the picture cat3 and cat4 are both 0.18% but only displays the first instance of that value. is there a way to have it show all?
The following post describes a couple of ways to do it: http://listserv.uga.edu/cgi-bin/wa?A2=ind0301d&L=sas-l&H=1&P=39488
Can you also post your data file?
i can create a dummy file, unfortunately the data is restricted by confidentiality agreements. gimme a few minutes.
proc report nowd data= r2011_copy missing split='|';
where flag = 'a';
column
cmpgn_cat
fundrate;
define cmpgn_cat / '' style(column)={font_face=calibri background=white foreground=black font_size=1} format=$catfmt.;
define fundrate / style(column)={font_face=calibri background=white foreground=black font_size=1} order descending format=percent8.2 '';
compute before / style={font_weight=bold font_face=calibri font_size=1
foreground=white background=cx800080
frame=void borderwidth=0 bordercolor=cx000000};
linetext = 'Acquisition fund';
line @1 linetext $30.;
endcomp;
run;
you'll see with rounding cat9 and cat10 both are 0.18% and only display for 1 category.
I am definitely NOT an expert with proc report, but I think that is the proc's action when an order statement is included. Would you get want you want if you left the order out and, instead, presorted your data? e.g.:
proc sort data=r2011;
by descending apprate;
run;
proc report nowd data= r2011 missing split='|';
column
cmpgn_cat
apprate;
define cmpgn_cat / '' style(column)={font_face=calibri background=white foreground=black font_size=1} format=$catfmt.;
define apprate / style(column)={font_face=calibri background=white foreground=black font_size=1} /*order descending*/ format=percent8.2 '';
compute before / style={font_weight=bold font_face=calibri font_size=1 foreground=white background=cx808000 frame=void borderwidth=0 bordercolor=cx000000};
linetext = 'Recapture/Acquisition';
line @1 linetext $30.;
endcomp;
run;
i very well could and yes that resolves the issue however it's not as 'automated' as I would like. the entire report has around 70-80 reports based on different metrics and it's rare that the rounding issue shows up. i dont know how feasible it would be to recode with proc sorts everytime that instance comes up. i guess im kinda hoping that there is a way to use order descending and have it display all values.. maybe wishful thinking..
The following post describes a couple of ways to do it: http://listserv.uga.edu/cgi-bin/wa?A2=ind0301d&L=sas-l&H=1&P=39488
perfect!!! not very elegant but it works thanks Art! with a lil bit of recoding i'll have this done. nice.
proc report nowd data= r2011_copy missing split='|';
where flag = 'a';
column
cmpgn_cat
fundrate
newfund;
define cmpgn_cat / '' style(column)={font_face=calibri background=white foreground=black font_size=1} format=$catfmt.;
define newfund /computed format=percent8.2;
define fundrate / noprint style(column)={font_face=calibri background=white foreground=black font_size=1} order descending format=percent8.2 '';
compute newfund;
if fundrate ^= '' then _fundrate = fundrate;
newfund = _fundrate;
endcomp;
compute before / style={font_weight=bold font_face=calibri font_size=1
foreground=white background=cx800080
frame=void borderwidth=0 bordercolor=cx000000};
linetext = 'Acquisition fund';
line @1 linetext $30.;
endcomp;
run;
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 16. Read more here about why you should contribute and what is in it for you!
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.
Select SAS Training centers are offering in-person courses. View upcoming courses for: