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;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.