I would like to produce a report table with column headings in two rows - the first row is regular column title, the second row is a count in the format of (n=xxx);
Also, have to include min-max range in first column. Is there a way to do it using ods rtf proc report? Thanks for your help!
Demographics | Treatment (n= xx) | Placebo (n= xx) | Total (n=xx) |
Mean age [min-max range] | |||
Mean Calculated Body Weight (kg) [min-max range] |
Hi:
This is very similar to the Demographic report shown in this Global Forum paper: http://www2.sas.com/proceedings/forum2008/173-2008.pdf starting on page 9.
But conceptually, you can do something like this with macro variables.
Example:
** could create these macro variables in a program;
** instead of hardcoding the values;
%let agestr = (N=19);
%let htstr = (N=19);
%let wtstr = (N=19);
ods rtf file='c:\temp\showheader.rtf';
proc report data=sashelp.class split='*'
style(header)={background=white}
style(column)={width=1in};
column sex age height weight;
define sex / group ' *Sex';
define age / "Age*&agestr";
define height / mean "Avg Height*&htstr" f=8.2;
define weight / mean "Avg Weight*&wtstr" f=8.2;
run;
ods rtf close;
produces this using ODS RTF:
cynthia
As suggested, used macro variables, and it worked! Thank you!
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.