numpy.quantile(arr, q, axis = None)
:计算qth沿指定轴的给定数据(数组元素)的分位数。
当人们处理正态分布时,分位数在统计中起着非常重要的作用。
在上图中,Q2
是个median
正态分布的数据。Q3 - Q2
表示给定数据集的分位数范围。
参数:
arr : [array_like]input array.
q : quantile value.
axis: [int or tuples of int]axis along which we want to calculate the quantile value. Otherwise, it will consider arr to be flattened(works on all the axis). axis = 0 means along the column and axis = 1 means working along the row.
out : [ndarray, optional]Different array in which we want to place the result. The array must have same dimensions as expected output.
Results: qth quantile of the array (a scalar value if axis is none) or array with quantile values along specified axis.
代码1:
# Python Program illustrating
# numpy.quantile() method
import numpy as np
# 1D array
arr = [20, 2, 7, 1, 34]
print("arr:", arr)
print("Q2 quantile of arr:", np.quantile(arr, .50))
print("Q1 quantile of arr:", np.quantile(arr, .25))
print("Q3 quantile of arr:", np.quantile(arr, .75))
print("100th quantile of arr:", np.quantile(arr, .1))
输出:
arr:[20, 2, 7, 1, 34] Q2 quantile of arr:7.0) Q1 quantile of arr:2.0) Q3 quantile of arr:20.0) 100th quantile of arr:1.4)
代码2:
# Python Program illustrating
# numpy.quantile() method
import numpy as np
# 2D array
arr = [[14, 17, 12, 33, 44],
[15, 6, 27, 8, 19],
[23, 2, 54, 1, 4, ]]
print("\narr:\n", arr)
# quantile of the flattened array
print("\n50th quantile of arr, axis = None:", np.quantile(arr, .50))
print("0th quantile of arr, axis = None:", np.quantile(arr, 0))
# quantile along the axis = 0
print("\n50th quantile of arr, axis = 0:", np.quantile(arr, .25, axis = 0))
print("0th quantile of arr, axis = 0:", np.quantile(arr, 0, axis = 0))
# quantile along the axis = 1
print("\n50th quantile of arr, axis = 1:", np.quantile(arr, .50, axis = 1))
print("0th quantile of arr, axis = 1:", np.quantile(arr, 0, axis = 1))
print("\n0th quantile of arr, axis = 1:\n",
np.quantile(arr, .50, axis = 1, keepdims = True))
print("\n0th quantile of arr, axis = 1:\n",
np.quantile(arr, 0, axis = 1, keepdims = True))
输出:
arr: [[14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4]] 50th quantile of arr, axis = None:15.0 0th quantile of arr, axis = None:1) 50th quantile of arr, axis = 0:[14.5 4. 19.5 4.5 11.5] 0th quantile of arr, axis = 0:[14 2 12 1 4] 50th quantile of arr, axis = 1:[17. 15. 4.] 0th quantile of arr, axis = 1:[12 6 1] 0th quantile of arr, axis = 1: [[17.] [15.] [ 4.]] 0th quantile of arr, axis = 1: [[12] [ 6] [ 1]]
相关用法
注:本文由纯净天空筛选整理自Mohit Gupta_OMG 大神的英文原创作品 numpy.quantile() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。