Python中numpy的 np.percentile 百分位函数详解
warning:
这篇文章距离上次修改已过182天,其中的内容可能已经有所变动。
numpy.percentile
是一个计算数据的百分位数的函数,其功能是求出数据在指定百分比位置的数值。
函数的基本语法是:numpy.percentile(a, q, axis=None, keepdims=False)
参数说明:
a
:输入数据。q
:百分位数,可以是一个数或者是一个序列的几个数。axis
:沿着哪个轴计算百分位数,默认是沿着数组的最后一个维度。keepdims
:是否保持原有数组的维度,默认是False。
返回值:
- 当
q
是一个数时,返回这个百分位的数值。 - 当
q
是一个序列时,返回一个与q
长度相同的数组,数组中的每个元素是对应百分位数的值。
实例代码:
import numpy as np
# 创建一个一维数组
data = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
# 计算第50百分位数(中位数)
print(np.percentile(data, 50)) # 输出:5.0
# 计算第25百分位数(第一四分位数)
print(np.percentile(data, 25)) # 输出:2.25
# 计算第75百分位数(第三四分位数)
print(np.percentile(data, 75)) # 输出:7.5
# 同时计算多个百分位
print(np.percentile(data, [25, 50, 75])) # 输出:[2.25, 5.0, 7.5]
# 沿着特定的轴计算百分位数
data2 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(np.percentile(data2, 50, axis=0)) # 输出:[4. 5. 6.]
# 保持原有维度
print(np.percentile(data2, 50, axis=0, keepdims=True)) # 输出:[[4. 5. 6.]]
以上代码演示了如何使用numpy.percentile
函数来计算不同的百分位数,并且如何在一维和多维数组上应用该函数,同时展示了如何改变计算的轴以及是否保持原有维度。
评论已关闭