百分位数是统计中使用的度量,表示小于这个值的观察值的百分比。 函数numpy.percentile()接受以下参数。
np.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation='linear', keepdims=False)
【注】举个例子:高等院校的入学考试成绩经常以百分位数的形式报告。比如,假设某个考生在入学考试中的语文部分的原始分数为 54 分。相对于参加同一考试的其他学生来说,他的成绩如何并不容易知道。但是如果原始分数54分恰好对应的是第70百分位数,我们就能知道大约70%的学生的考分比他低,而约30%的学生考分比他高。这里的 p = 70。
示例代码:
import numpy as np a = np.array([[10, 7, 4], [3, 2, 1]]) print ('我们的数组是:') print (a) print ('调用 percentile() 函数:') # 50% 的分位数,就是 a 里排序之后的中位数 print (np.percentile(a, 50)) # axis 为 0,在纵列上求 print (np.percentile(a, 50, axis=0)) # axis 为 1,在横行上求 print (np.percentile(a, 50, axis=1)) # 保持维度不变 print (np.percentile(a, 50, axis=1, keepdims=True))
输出结果
我们的数组是: [[10 7 4] [ 3 2 1]] 调用 percentile() 函数: 3.5 [6.5 4.5 2.5] [7. 2.] [[7.] [2.]]