I want to distribute my hospital data into 4 tiers (bins) based on the score. Tier 1 (good hospitals) has the highest score and Tier 4 (not so good hospitals) has the lowest score. The tiers can be of any size and there is no problem with that. Importantly, I want the tiers to be well separated based on the score, so if this makes the tiers unequal in size that is absolutely fine.

In the example below, I created a percentile rank on the score and then used pandas.cut() on the percentile rank to create the 4 tiers. The issue I have is with the tier borders which I think are not well separated. Example (red highlight): DD14 and DD15 have close scores and I don't want them to be in different tiers. Similarly DD24 and DD25 have a similar problem.

Is there a standard statistical approach to address my issue?


  1. I can round the percentile rank to a whole number to blunt the different and achieve this, but I guess this is not a standard solution, because there could be another scenario where this approach will create different problems in the tier.
  2. I'm not tiering directly on the score and use percentile rank instead because I want to normalize the values before tiering. I think this is a standard practice. enter image description here
  • $\begingroup$ Cross Validated seemed to explain rather well why this is not a reasonable task. $\endgroup$
    – Dave
    Commented Aug 21, 2023 at 21:21

1 Answer 1


Here are a few hints:

  • Your task might not be well-defined: to "separate" data point can be understood as to find the (four) different clusters that they belong to -- a problem of unsupervised machine learning. E.g., the algorithm is supposed to find the centers of regions that have a high density of data points. Taking a brief look at your data extract, I do not see such "clustering". Therefore, ...
  • ... your task probably should be to find a reasonable criterion based on which you split the dataset, e.g., an unbiased approach is (as you probably did), to split it into quartiles according to the percentile rank.
  • How about the "ambiguity" at the borders between two tiers? Well, this is something that you cannot avoid. But typically, your dataset should be large enough such that this one data point more or less should not be an issue. At the end of the day, there is no other way as your "splitting strategy" is arbitrary. If it is important that one point belongs to this tier and not to the other, then you just found your splitting criterion!

I hope that helps getting you on the right track.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.