In a simplification of my problem, let's assume we have players who can get an integer value score $s$ considering $\{ s \in \mathbb{N} : 0 \leq s \leq 3 \}$.
Same sample data for scores:
- Player A: average of $2.9$, played $20$ rounds.
- Player B: average of $2.7$, played $60$ rounds.
- Player C: average of $2.2$, played $6$ rounds.
- Player D: average of $2.0$, played $3$ rounds.
I'd like to rank them by performance. Now, even though A has the biggest average, he has much less rounds than B, so the latter still has a better performance. When I thought about how to calculate it, I though about adding a certain small bonus value ($b$) multiplied by the rounds ($r$) to the averages ($a$), and then compare the final result. I think this would work fine. Compare $a + (rb)$.
However, I hit a problem with player D for example. He could have scored $3,3,0$. This gives a low average, but the third result could be just bad luck. Does not imply that he is worse than C who could have a result derived from $2 , 2 , 2, 3 , 2, 2$ for example (consistent lower scores).
How can I precisely calculate that performance score? It should:
- give priority to people with more data
- give less weight to "deviations" than what a simple average does