Hi all,
I would like to perform a query to select top 3 ID's that have max row counts,
I have found that it's possible to do with this query :
proc sql;
create table want as
select *
from (select id, count(*) as cnt from have group by id_user)
having cnt=max(cnt);
quit;
but I would like to select top 3 ID' s that have the max count of rows of variable Name ( attached image) , the ID 1001 must come first , the 1002 second and 1004 third.
Anyone have an idea to that ?
Thanks.
Why would ID=1004 and not 1005 be in the data? They both appear once?
yes,
we can add them,
the idea is to get top 3 , I don't need others, but ordering by variables count could also be an option.... so I can srroll trhough them all from top...
In https://communities.sas.com/t5/SAS-Programming/Top-N-rows-per-by-group/td-p/172659 @Jagadishkatam suggested using proc sort and proc rank.
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.
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.
Ready to level-up your skills? Choose your own adventure.