# scipy.stats.percentileofscore¶

scipy.stats.percentileofscore(a, score, kind='rank')[source]

The percentile rank of a score relative to a list of scores.

A percentileofscore of, for example, 80% means that 80% of the scores in a are below the given score. In the case of gaps or ties, the exact definition depends on the optional keyword, kind.

Parameters: a : array_like Array of scores to which score is compared. score : int or float Score that is compared to the elements in a. kind : {‘rank’, ‘weak’, ‘strict’, ‘mean’}, optional This optional parameter specifies the interpretation of the resulting score: “rank”: Average percentage ranking of score. In case of multiple matches, average the percentage rankings of all matching scores. “weak”: This kind corresponds to the definition of a cumulative distribution function. A percentileofscore of 80% means that 80% of values are less than or equal to the provided score. “strict”: Similar to “weak”, except that only values that are strictly less than the given score are counted. “mean”: The average of the “weak” and “strict” scores, often used in testing. See http://en.wikipedia.org/wiki/Percentile_rank pcos : float Percentile-position of score (0-100) relative to a.

numpy.percentile

Examples

Three-quarters of the given values lie below a given score:

>>> from scipy import stats
>>> stats.percentileofscore([1, 2, 3, 4], 3)
75.0


With multiple matches, note how the scores of the two matches, 0.6 and 0.8 respectively, are averaged:

>>> stats.percentileofscore([1, 2, 3, 3, 4], 3)
70.0


Only 2/5 values are strictly less than 3:

>>> stats.percentileofscore([1, 2, 3, 3, 4], 3, kind='strict')
40.0


But 4/5 values are less than or equal to 3:

>>> stats.percentileofscore([1, 2, 3, 3, 4], 3, kind='weak')
80.0


The average between the weak and the strict scores is

>>> stats.percentileofscore([1, 2, 3, 3, 4], 3, kind='mean')
60.0


#### Previous topic

scipy.stats.itemfreq

#### Next topic

scipy.stats.scoreatpercentile