How can I instruct SAS to sort a dataset by a certain column number regrdless of its name?
Thanks
Avirt
You can do that easily with proc sql. e.g.:
proc sql;
create table want as
select *
from sashelp.class
order by 2
;
quit;
example:
data have;
input (a b c d)(:$2.);
cards;
aa xx cc dd
ab cd ef gr
;
proc sql noprint;
select name into :vars separated by ' ' from
dictionary.columns
where libname='WORK' and memname='HAVE';
quit;
%let i=2;
%let sort=%scan(&vars,&i);
proc sort data=have;
by &sort;
proc print;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.