np.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation='linear', keepdims=False)
作用:找到一組數的分位數值,如四分位數等
函數參數說明:
a : array,用來算分位數的對象,可以是多維的數組 q : 介於0-100的float,用來計算是幾分位的參數,如四分之一位就是25,如要算兩個位置的數就(25,75) axis : 坐標軸的方向,一維的就不用考慮了,多維的就用這個調整計算的維度方向,取值范圍0/1 out : 輸出數據的存放對象,參數要與預期輸出有相同的形狀和緩沖區長度 overwrite_input : bool,默認False,為True時及計算直接在數組內存計算,計算后原數組無法保存 interpolation : 取值范圍{'linear', 'lower', 'higher', 'midpoint', 'nearest'} 默認liner,比如取中位數,但是中位數有兩個數字6和7,選不同參數來調整輸出 keepdims : bool,默認False,為真時取中位數的那個軸將保留在結果中
示例:
>>>a = np.array([[10, 7, 4], [3, 2, 1]]) >>>a array([[10, 7, 4], [ 3, 2, 1]]) >>>np.percentile(a, 50) 3.5 >>>np.percentile(a, 50, axis=0) array([[ 6.5, 4.5, 2.5]]) >>>np.percentile(a, 50, axis=1) array([ 7., 2.]) >>>np.percentile(a, 50, axis=1, keepdims=True) array([[ 7.], [ 2.]])
參考文獻: