Hello
I am using in proc means with stackodsoutput option.
I want to ask please why when I don't use NWAY I don't get a row for grand summaries.
Please see the code
/****Using nway*****/
ods output summary=with_stackods (drop=_control_);
proc means data=sashelp.class stackodsoutput sum mean std nway;
class sex;
var height weight;
run;
proc print data=with_stackods noobs;
run;
/****Don't use nway*****/
ods output summary=with_stackods (drop=_control_);
proc means data=sashelp.class stackodsoutput sum mean std ;
class sex;
var height weight;
run;
proc print data=with_stackods noobs;
run;
TYPES and WAYS statements may help.
Consider:
ods output summary=with_stackods (drop=_control_); proc means data=sashelp.class stackodsoutput sum mean std ; class sex; var height weight; types sex (); run;
The () on types specifyies the _type_=0 grand summary.
Hi,
From the SAS procedures website:
NWAY
specifies that the output data set contain only statistics for the observations with the highest _TYPE_ and _WAY_ values. When you specify class variables, NWAY corresponds to the combination of all class variables.
As you have a class variable and a NWAY statement, it views the overall group as a distinct group and will then also present in the output dataset.
Thanks,
Karen.
Or using the following instead.
by sex;
But the dataset must be sorted before .
TYPES and WAYS statements may help.
Consider:
ods output summary=with_stackods (drop=_control_); proc means data=sashelp.class stackodsoutput sum mean std ; class sex; var height weight; types sex (); run;
The () on types specifyies the _type_=0 grand summary.
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 25. Read more here about why you should contribute and what is in it for you!
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.