Python pandas入門(mén)系列之眾數(shù)和分位數(shù)_第1頁(yè)
Python pandas入門(mén)系列之眾數(shù)和分位數(shù)_第2頁(yè)
Python pandas入門(mén)系列之眾數(shù)和分位數(shù)_第3頁(yè)
Python pandas入門(mén)系列之眾數(shù)和分位數(shù)_第4頁(yè)
Python pandas入門(mén)系列之眾數(shù)和分位數(shù)_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第Pythonpandas入門(mén)系列之眾數(shù)和分位數(shù)目錄準(zhǔn)備1.求眾數(shù)1.1對(duì)全表進(jìn)行操作1.1.1求取每列的眾數(shù)1.1.2求取每行的眾數(shù)1.2對(duì)單獨(dú)的一行或者一列進(jìn)行操作1.2.1求取單獨(dú)某一列的眾數(shù)1.2.2求取單獨(dú)某一行的眾數(shù)1.3對(duì)多行或者多列進(jìn)行操作1.3.1求取多列的眾數(shù)1.3.2求取多行的眾數(shù)2求分位數(shù)2.1求取不同分位的分位數(shù)2.1.1四分之一分位數(shù)2.1.2四分之三分位數(shù)2.2對(duì)全表進(jìn)行操作2.2.1對(duì)每一列求分位數(shù)2.2.2對(duì)每一行求分位數(shù)2.3對(duì)單獨(dú)的一行或者一列進(jìn)行操作2.3.1對(duì)某一列求分位數(shù)2.3.2對(duì)某一行求分位數(shù)2.4對(duì)多行或者多列進(jìn)行操作2.4.1對(duì)多列求分位數(shù)2.4.2對(duì)多行求分位數(shù)附:pandas和numpy計(jì)算分位數(shù)的區(qū)別總結(jié)

準(zhǔn)備

本文用到的表格內(nèi)容如下:

先來(lái)看一下原始情形:

importpandasaspd

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df)

result:

數(shù)學(xué)成績(jī)語(yǔ)文成績(jī)英語(yǔ)成績(jī)

0897898

1353434

2435625

3357883

4674665

5898983

6964583

7356745

8357883

1.求眾數(shù)

1.1對(duì)全表進(jìn)行操作

1.1.1求取每列的眾數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.var())

result:

數(shù)學(xué)成績(jī)語(yǔ)文成績(jī)英語(yǔ)成績(jī)

0357883

1.1.2求取每行的眾數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.mode(axis=1))

result:

012

078.089.098.0

134.0NaNNaN

225.043.056.0

335.078.083.0

446.065.067.0

589.0NaNNaN

645.083.096.0

735.045.067.0

835.078.083.0

1.2對(duì)單獨(dú)的一行或者一列進(jìn)行操作

1.2.1求取單獨(dú)某一列的眾數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.mode(axis=1))

result:

035

dtype:int64

1.2.2求取單獨(dú)某一行的眾數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.iloc[[0]].mode())

result:

數(shù)學(xué)成績(jī)語(yǔ)文成績(jī)英語(yǔ)成績(jī)

0897898

1.3對(duì)多行或者多列進(jìn)行操作

1.3.1求取多列的眾數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df[['數(shù)學(xué)成績(jī)',"語(yǔ)文成績(jī)"]].mode())

result:

數(shù)學(xué)成績(jī)語(yǔ)文成績(jī)

03578

1.3.2求取多行的眾數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.iloc[[0,1]].mode())

result:

數(shù)學(xué)成績(jī)語(yǔ)文成績(jī)英語(yǔ)成績(jī)

0353434

1897898

2求分位數(shù)

分位數(shù)是比中位數(shù)更加詳細(xì)的基于位置的指標(biāo),分位數(shù)主要有四分之一分位數(shù),二分之一分位數(shù)(就是中位數(shù))、四分之三分位數(shù)

2.1求取不同分位的分位數(shù)

2.1.1四分之一分位數(shù)

importpandasaspd

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.quantile(0.25))

result:

數(shù)學(xué)成績(jī)35.0

語(yǔ)文成績(jī)46.0

英語(yǔ)成績(jī)45.0

Name:0.25,dtype:float64

2.1.2四分之三分位數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.quantile(0.75))

result:

數(shù)學(xué)成績(jī)89.0

語(yǔ)文成績(jī)78.0

英語(yǔ)成績(jī)83.0

Name:0.75,dtype:float64

2.2對(duì)全表進(jìn)行操作

2.2.1對(duì)每一列求分位數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.quantile(0.25))

result:

數(shù)學(xué)成績(jī)35.0

語(yǔ)文成績(jī)46.0

英語(yǔ)成績(jī)45.0

Name:0.25,dtype:float64

2.2.2對(duì)每一行求分位數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.quantile(0.25,axis=1))

result:

083.5

134.0

234.0

356.5

455.5

586.0

664.0

740.0

856.5

Name:0.25,dtype:float64

2.3對(duì)單獨(dú)的一行或者一列進(jìn)行操作

2.3.1對(duì)某一列求分位數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df['數(shù)學(xué)成績(jī)'].quantile(0.25))

result:

35.0

2.3.2對(duì)某一行求分位數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.iloc[[0]].quantile(0.25))

result:

數(shù)學(xué)成績(jī)89.0

語(yǔ)文成績(jī)78.0

英語(yǔ)成績(jī)98.0

Name:0.25,dtype:float64

2.4對(duì)多行或者多列進(jìn)行操作

2.4.1對(duì)多列求分位數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df[['數(shù)學(xué)成績(jī)',"語(yǔ)文成績(jī)"]].quantile(0.25))

result:

數(shù)學(xué)成績(jī)35.0

語(yǔ)文成績(jī)46.0

Name:0.25,dtype:float64

2.4.2對(duì)多行求分位數(shù)

df=pd.read_excel(r'C:\Users\admin\Desktop\測(cè)試.xlsx')

print(df.iloc[[0,1]].quantile(0.25))

result:

數(shù)學(xué)成績(jī)48.5

語(yǔ)文成績(jī)45.0

英語(yǔ)成績(jī)50.0

Name:0.25,dtype:float64

附:pandas和numpy計(jì)算分位數(shù)的區(qū)別

pandas和numpy中都有計(jì)算分位數(shù)的方法,pandas中是quantile,numpy中是percentile

兩個(gè)方法其實(shí)沒(méi)什么區(qū)別,用法上稍微不同,quantile的優(yōu)點(diǎn)是與pandas中的groupby結(jié)合使用,可以分組之后取每個(gè)組的某分位數(shù)

quantile代碼:

importpandasaspd

importnumpyasnp

data=pd.read_csv('order_rank_p_0409.txt',sep='\t')

#將data按id_1和id_2分組

grouped=data.groupby(['id_1','id_2'])

#用quantile計(jì)算第40%的分位數(shù)

grouped['gmv'].quantile(0.4)

#用to_csv生成文件

x.to_csv('order_

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論