BookmarkSubscribeRSS Feed
luciacossaro
Obsidian | Level 7

Hi;

 

I have a dataset with a variable "ID" (char) and a variable "Price" (num) and some others variables.

I need split the dataset in 10 deciles (10% of observations in each) FOR EACH ID'S VALUE depending on price's values for after to can choose the highest 10% price's value for each ID'S value.

 

For the differents ID's values there is not the same number of observations.

 

I tried with PROC RANK but i get deciles for all the dataset (not depending of each ID's value).

 

It should be relatively easy to do it but I am a new SAS user and I can not do it.

 

Do you have any idea ?

 

Thank you!

2 REPLIES 2
SuryaKiran
Meteorite | Level 14

Please post some sample data and the PROC RANK code you used. You might be missing by variable in PROC RANK.

Thanks,
Suryakiran
ballardw
Super User

Try 1) sorting the data set by your ID variable

      2) add a BY Id; statement to proc rank

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
  • 1404 views
  • 0 likes
  • 3 in conversation