scipy.stats.scoreatpercentile(a, score, kind='rank')
function helps us to calculate the score at a given percentile of the input array.
The score at percentile = 50 is the median. If the desired quantile lies between two data points, we interpolate between them, according to the value of interpolation.
Parameters :
arr : [array_like] input array.
per : [array_like] Percentile at which we need the score.
limit : [tuple] the lower and upper limits within which to compute the percentile.
axis : [int] axis along which we need to calculate the score.Results : Score at Percentile relative to the array element.
Code #1:
# scoreatpercentile from scipy import stats import numpy as np # 1D array arr = [ 20 , 2 , 7 , 1 , 7 , 7 , 34 , 3 ] print ( "arr : " , arr) print ( "\nScore at 50th percentile : " , stats.scoreatpercentile(arr, 50 )) print ( "\nScore at 90th percentile : " , stats.scoreatpercentile(arr, 90 )) print ( "\nScore at 10th percentile : " , stats.scoreatpercentile(arr, 10 )) print ( "\nScore at 100th percentile : " , stats.scoreatpercentile(arr, 100 )) print ( "\nScore at 30th percentile : " , stats.scoreatpercentile(arr, 30 )) |
arr : [20, 2, 7, 1, 7, 7, 34, 3] Score at 50th percentile : 7.0 Score at 90th percentile : 24.2 Score at 10th percentile : 1.7 Score at 100th percentile : 34.0 Score at 30th percentile : 3.4
Code #2:
# scoreatpercentile from scipy import stats import numpy as np arr = [[ 14 , 17 , 12 , 33 , 44 ], [ 15 , 6 , 27 , 8 , 19 ], [ 23 , 2 , 54 , 1 , 4 , ]] print ( "arr : " , arr) print ( "\nScore at 50th percentile : " , stats.scoreatpercentile(arr, 50 )) print ( "\nScore at 50th percentile : " , stats.scoreatpercentile(arr, 50 , axis = 1 )) print ( "\nScore at 50th percentile : " , stats.scoreatpercentile(arr, 50 , axis = 0 )) |
arr : [[14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4]] Score at 50th percentile : 15.0 Score at 50th percentile : [ 17. 15. 4.] Score at 50th percentile : [ 15. 6. 27. 8. 19.]