Pandas Percentile計算方法

2021-10-01 16:39:35 字數 838 閱讀 3281

為了更一般化,在計算的過程中,我們考慮p分位。當p=0.25 0.5 0.75 時,就是在計算四分位數。

首先確定p分位數的位置(有兩種方法):

方法1 pos = (n+1)*p

方法2 pos = 1+(n-1)*p

pandas 中使用的是方法2確定的。

計算

df = pd.dataframe(np.array([[

1,1]

,[2,

10],[

3,100],[

4,100]])

,columns=

['a'

,'b'])

print

(df.quantile(.1)

)

結果是:

a    1.3

b 3.7

name:

0.1, dtype: float64

預設使用的是linear 插值

計算a列

pos = 1 + (4 - 1)*0.1 = 1.3

fraction = 0.3

value = 1 + (2 - 1) * 0.3 = 1.3

計算b列

pos = 1.3

value = 1 + (10 - 1) * 0.3 = 3.7

在b中,假如pos等於2.5呢,即在2-3之間,那i對應就是10,j對應就是100,ret = 10 + (100-10) * 0.5 = 55

矩陣方冪快速計算

description 設a是乙個n n的矩陣,很多時候人們需要計算乙個矩陣的n次冪,當n足夠大時,計算量會變得很大,時間會變得很長,程式設計快速計算a n。input matirx a output matrix b a n。演算法描述 設a 是乙個n n的矩陣,輸入n,該演算法可以實現快速計算a...

mysql計算位數 MySQL中位數計算方法

在網上搜到的一種演算法是利用自增長變數進行排序,然後再根據位置序號取。感覺有些複雜了,還是group concat來的省事些 1.按順序聚合,逗號分隔,並計數 group concat number order by number asc 2.根據逗號拆分,判斷奇偶數去擷取中間位置的那個數 具體 如...

mysql 記憶體計算 mysql 記憶體的計算方法

使用tuning primer 分析mysql 看了 後對記憶體的分配有了一些了解,分享一下 實際記憶體使用主要分為幾部分 1 全域性buffer global buffer 包括 innodb buffer pool size innodb additional mem pool size inn...