While running proc means, the output is as follows:
But while outputting the dataset using Output= statement, the format is completely different (Only one row with all stats of variables as variable names).
How can i get the output dataset in the same above format? (Need other stats as NMiss & Percentiles etc.)
Use the STACKODSOUTPUT option, which was introduced in SAS 9.3:
/* Use the STACKODSOUTPUT option to get output in a more natural shape */
proc means data=sashelp.cars StackODSOutput
N NMISS MEAN STD P25 MEDIAN P75;
var mpg_city mpg_highway;
ods output summary=out;
run;
proc print data=out noobs;run;
Do you need the data or a report table? If you want a readable table in the form you are showing then using ODS to output the table output would be the easiest thing.
Or transpose the output set
@ballardw: I need an output dataset in the same format as the report.(Variable Mean Min Max etc.)
Transposing the output has one row for each Statistic of the variable (Variable1_Mean, Variable1_Min etc.) but i want only one row for each variable and ststistics in columns (Same as report format).
Use the STACKODSOUTPUT option, which was introduced in SAS 9.3:
/* Use the STACKODSOUTPUT option to get output in a more natural shape */
proc means data=sashelp.cars StackODSOutput
N NMISS MEAN STD P25 MEDIAN P75;
var mpg_city mpg_highway;
ods output summary=out;
run;
proc print data=out noobs;run;
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
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.
Ready to level-up your skills? Choose your own adventure.