BookmarkSubscribeRSS Feed
paulrockliffe
Obsidian | Level 7

Hello,

 

I have a table containing various Entities, each entity can have up to 5 reference numbers and each reference number can have an unlimited number of amounts associated with it.  So 3 columns, Entity, Reference, Amount

 

I want to extract a table that contains one result for each Entity and Reference combination and the largest Amount. 

 

I've done this before using the Sort task, but I can't get it to work where I'm grouping by more than one column in the Sort.

 

Does anyone have any top tips?

 

Thanks!

2 REPLIES 2
RW9
Diamond | Level 26 RW9
Diamond | Level 26

Post example test data in the form of a datastep, and what the output from that should be.  I cant guess from that why:

proc sort data=have out=want nodupkey;
  by entity reference descending amount;
run;

Would not work.

Astounding
PROC Star

Here's a way:

 

proc summary data=have nway;

class entity refno;

var amount;

output out=want (keep=entity refno amount) max=;

run;

 

There are ways to do this where you run PROC SORT first, but you then need a DATA step to select the desired observations.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1145 views
  • 2 likes
  • 3 in conversation