For example, I have one dataset:mydata. How to get the variable list in which var1-var4 are sorted by the descending order of their mean values?
Thanks!!
data mydata;
input var1 var2 var3 var4;
datalines;
1 2 3 4
1 3 1 6
4 5 8 9
2 8 2 2
;
run;
Hi,
data mydata;
input var1 var2 var3 var4;
xx=mean(of var1-var4);
datalines;
1 2 3 4
1 3 1 6
4 5 8 9
2 8 2 2
;
run;
proc sort data=mydata;by descending xx;run;
Thanks,
Shiva
Depend upon what you actually want. E.g., it might require something like the following if you actually want the dataset variables to be reordered:
data mydata;
input var1 var2 var3 var4;
datalines;
1 2 3 4
1 3 1 6
4 5 8 9
2 8 2 2
;
proc means data=mydata noprint;
output out=var_means(drop=_FREQ_ _TYPE_);
run;
proc transpose data=var_means out=trans_mean(rename=(_NAME_=NAME));
id _STAT_;
run;
proc sql noprint;
select name into :names
separated by " "
from trans_mean
order by mean desc
;
quit;
data want;
retain &names.;
set mydata;
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 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.