四分位數與pandas中的quantile函式

2021-10-06 10:15:49 字數 1866 閱讀 5195

統計學上的有分位數這個概念,一般用p來表示。原則上p是可以取0到1之間的任意值的。但是有乙個四分位數是p分位數中較為有名的。

所謂四分位數;即把數值由小到大排列並分成四等份,處於三個分割點位置的數值就是四分位數。

為了更一般化,在計算的過程中,我們考慮p分位。當p=0.25 0.5 0.75 時,就是在計算四分位數。pandas庫quantile函式可以很方便的幫助我們進行分位數的計算。

dataframe.quantile(q=0.5, axis=0, numeric_only=true, interpolation=』linear』)

常用引數:

q : 數字或者是類列表,範圍只能在0-1之間,預設是0.5,即中位數-第2四分位數

axis :計算方向,可以是 中之一,預設為 0

interpolation(插值方法):可以是 之一,預設是linear。

這五個插值方法是這樣的:當選中的分為點位於兩個數資料點 i and j 之間時:

import pandas as pd

df=pd.read_csv(

'data/練習.csv'

)df.sort_values(

"height"

)

idheight

0110123

120142

110351

110274

120385

1205

12

df[

'height'

].quantile(

)

6.0
df[

'height'

].quantile(q=

0.5,interpolation=

"linear"

)

6.0
df[

'height'

].quantile(q=

0.5,interpolation=

"lower"

)

5
df[

'height'

].quantile(q=

0.5,interpolation=

"higher"

)

7
df[

'height'

].quantile(q=

0.5,interpolation=

"midpoint"

)

6.0
df[

'height'

].quantile(q=

0.5,interpolation=

"nearest"

)

5
說明:df[『height』]中一共有6個資料,中位數的位置pos=1+(6-1)*0.5=3.5,這個位置介於5和7之間,則i=5,j=7,fraction=0.5
df[

'height'

].quantile(

[0.25

,0.5

,0.75

])

0.25    4.25

0.50 6.00

0.75 7.75

name: height, dtype: float64

四分位數求法

四分位數間距 是上四分位數與下四分位數之差,用四分位數間距可反映變異程度的大小.即 q3 q1 確定四分位數的位置 四分位數是將數列等分成四個部分的數,乙個數列有三個四分位數,設下四分位數 中位數和上四分位數分別為q1 q2 q3,則 q1 q2 q3的位置可由下述公式確定 q1的位置 n 1 4 ...

四分位數及matlab實現

四分位數 quantile 解釋及呼叫形式如下。quantile x,y,z 的三個引數的說明如下 x表示要求的矩陣或者向量 y的取值為表示要求的分位數,如四分之一中位數0.25,四分之三中位數0.75等 z的取值為1或者2,若值為1則表示按列求四分位數,若為2表示按行求四分位數。例子如下 f 1 ...

方差 標準差 四分位數 z score公式

s 2 frac sum x i mu 2 frac x 1 mu 2 x 2 mu 2 x n mu 2 其中公式中 為平均數,n為這組資料的個數,x1 x2 x3 xn為這組資料具體數值。s sqrt sqrt sum x i mu 2 其中公式中數值x1,x2,x3,xn 皆為實數 其平均值 ...