📜  Python中的 numpy.quantile()

📅  最后修改于: 2022-05-13 01:55:44.141000             🧑  作者: Mango

Python中的 numpy.quantile()

numpy.quantile(arr, q, axis = None)计算给定数据(数组元素)沿指定轴的第 q分位数。

当处理正态分布时,分位数在统计中起着非常重要的作用。

在上图中, Q2是正态分布数据的medianQ3 - Q2表示给定数据集的分位数范围

代码#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]]