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;
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.