DATA Step, Macro, Functions and more

Top two records by customer/group

Reply
New Contributor
Posts: 2

Top two records by customer/group

[ Edited ]

Hi,

 

I am having following dataset with me-:

 

The first column is customerid and second one is spend. Can anyboby explain the logic for calculation top two transactions of each customer.

 

1 500

1 200

1 100

2 900

2 550

2 200

3 1900

3 1300

3 750

3 500

 

Thanks & Regards

Mona

Super User
Posts: 19,855

Re: Top two records by customer/group

Hi Mona,

 

the solution I posted here, is exactly what you need, expect you want to use 2 instead of 4. 

 

https://communities.sas.com/t5/Base-SAS-Programming/Selecting-the-closest-4-propensity-scores-as-con...

 

proc sort data=have;
by customerID descending amount;
run;

data want;
set have;
by customerID;

if first.caseID then count=0;
count+1;

if count <= 2;

run;
Ask a Question
Discussion stats
  • 1 reply
  • 133 views
  • 0 likes
  • 2 in conversation