|
| 序號(hào) | 參數(shù)及描述 |
|---|---|
| 1. | a 輸入數(shù)組 |
| 2. | q 要計(jì)算的百分位數(shù),在 0 ~ 100 之間 |
| 3. | axis 沿著它計(jì)算百分位數(shù)的軸 ,二維取值0,1 |
首先明確百分位數(shù)的概念:
第p個(gè)百分位數(shù)是這樣一個(gè)值,它使得至少有p%的數(shù)據(jù)項(xiàng)小于或等于這個(gè)值,且至少有(100-p)%的數(shù)據(jù)項(xiàng)大于或等于這個(gè)值。
舉個(gè)例子:
高等院校的入學(xué)考試成績(jī)經(jīng)常以百分位數(shù)的形式報(bào)告。比如,假設(shè)某個(gè)考生在入學(xué)考試中的語(yǔ)文部分的原始分?jǐn)?shù)為54分。相對(duì)于參加同一考試的其他學(xué)生來(lái)說(shuō),他的成績(jī)?nèi)绾尾⒉蝗菀字?。但是如果原始分?jǐn)?shù)54分恰好對(duì)應(yīng)的是第70百分位數(shù),我們就能知道大約70%的學(xué)生的考分比他低,而約30%的學(xué)生考分比他高
這里的p = 70 .在numpy中,是這樣的:
numpy.percentile Parameters ---------- a : np數(shù)組 q : float in range of [0,100] (or sequence of floats) Percentile to compute。 要計(jì)算的q分位數(shù)。 axis : 那個(gè)軸上運(yùn)算。 keepdims :bool是否保持維度不變。 Examples -------->>> a = range(1,101)>>> np.percentile(a, 90) #90%的分位數(shù)90.1 #表示有百分之九十的數(shù)小于90.1。>>> a = np.array([[10, 7, 4], [3, 2, 1]]) >>> a array([[10, 7, 4], [ 3, 2, 1]]) >>> np.percentile(a, 50) #50%的分位數(shù),就是a里排序之后的中位數(shù) 3.5 #表示有百分之五十的數(shù)小于3.5。>>> np.percentile(a, 50, axis=0) #axis為0,在縱列上求 array([[ 6.5, 4.5, 2.5]]) >>> np.percentile(a, 50, axis=1) #axis為1,在橫行上求 array([ 7., 2.]) >>> np.percentile(a, 50, axis=1, keepdims=True) #保持維度不變,這對(duì)使用sklearn的fit有好處。 array([[ 7.], [ 2.]])
|
|