AFAIK, there is no descending() function in SAS, but there is a descending option for the by statement: http://documentation.sas.com/?docsetId=lestmtsref&docsetTarget=p0yeyftk8ftuckn1o5qzy53284gz.htm&docs...
If you mean to read a dataset in reverse order, backwards from the end, here is one way:
data ssalc;
set sashelp.class(obs=1) nobs=nobs;
do i = nobs to 1 by -1;
set sashelp.class point=i;
output;
end;
drop i;
run;
Since NOBS=NOBS is taken care of at compile time, here is an alternative to @PGStats code.
data ssalc(drop=i);
do i = nobs to 1 by -1;
set sashelp.class point=i nobs=nobs;
output;
end;
stop;
run;
Test it! I did.
It will work because it will hit the obs=1 limit after the first iteration. It's just another way to avoid an infinite loop.
Sorry @PGStats, I stand corrected. I will update that post.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.