Pandas是一個(gè)python數(shù)據(jù)分析庫(kù),它提供了許多函數(shù)和方法來加快數(shù)據(jù)分析過程,下面這篇文章主要給大家介紹了關(guān)于python基礎(chǔ)篇之pandas常用基本函數(shù)的相關(guān)資料,需要的朋友可以參考下
前言
這篇主要整理pandas常用的基本函數(shù),主要分為五部分:
匯總函數(shù)
特征統(tǒng)計(jì)函數(shù)
唯一值函數(shù)
替換函數(shù)
排序函數(shù)
1、匯總函數(shù)
常用的主要是4個(gè):
tail():返回表或序列的后n行
head():返回表或序列的前n行
info():返回表的信息概況
describe():返回表中數(shù)值列對(duì)應(yīng)的主要統(tǒng)計(jì)量
n默認(rèn)為5
df.describe() #運(yùn)行截圖 Height Weight count 183.000000 189.000000 mean 163.218033 55.015873 std 8.608879 12.824294 min 145.400000 34.000000 25%157.150000 46.000000 50%161.900000 51.000000 75%167.500000 65.000000 max 193.900000 89.000000
2、特征統(tǒng)計(jì)函數(shù)
在Series和DataFrame上定義了許多統(tǒng)計(jì)函數(shù),最常見的是:
sum
mean(均值)
median(中位數(shù))
var(方差)
std(標(biāo)準(zhǔn)差)
max
min
用法示例
df_demo=df[['Height','Weight']] df_demo.mean()
聚合函數(shù)
quantile(返回分位數(shù))
count(返回非缺失值個(gè)數(shù))
idxmax(最大值對(duì)應(yīng)的索引)
聚合函數(shù),有一個(gè)公共參數(shù)axis,axis=0代表逐列聚合,axis=1表示逐行聚合
df_demo.mean(axis=1).head()
3、唯一值函數(shù)
唯一值函數(shù)常用的四個(gè)函數(shù):
unique():得到唯一值組成的列表->統(tǒng)計(jì)出指定列唯一存在的值有哪些
nunique():唯一值的個(gè)數(shù)->統(tǒng)計(jì)出指定列唯一存在的值總共有多少個(gè)
value_counts():得到唯一值和其對(duì)應(yīng)出現(xiàn)的頻數(shù)
drop_duplicates():去重
duplicated()
drop_duplicates()基本用法
關(guān)鍵參數(shù)keep
first:保留第一次出現(xiàn)的重復(fù)行,刪除后面的重復(fù)行
last:刪除重復(fù)項(xiàng),除了最后一次出現(xiàn)
False:把所有重復(fù)組合所在的行剔除。
需要指定列
代碼:
#原本的數(shù)據(jù)樣例 df_demo=df[['Gender','Transfer','Name']] df_demo
Gender Transfer Name 0 Female N Gaopeng Yang 1 Male N Changqiang You 2 Male N Mei Sun 3 Female N Xiaojuan Sun 4 Male N Gaojuan You ............ 195 Female N Xiaojuan Sun 196 Female N Li Zhao 197 Female N Chengqiang Chu 198 Male N Chengmei Shen 199 Male N Chunpeng Lv 200 rows×3 columns Gender Transfer Name 0 Female N Gaopeng Yang 1 Male N Changqiang You 12 Female NaN Peng You 21 Male NaN Xiaopeng Shen 36 Male Y Xiaojuan Qin 43 Female Y Gaoli Feng
由此可見,使用了first參數(shù),保留第一次出現(xiàn)的重復(fù)行,刪除后面的重復(fù)行
在未指定參數(shù)的情況下,keep默認(rèn)first;
指定last
案例如下:
df_demo.drop_duplicates(['Gender','Transfer'],keep='last') Gender Transfer Name 147 Male NaN Juan You 150 Male Y Chengpeng You 169 Female Y Chengquan Qin 194 Female NaN Yanmei Qian 197 Female N Chengqiang Chu 199 Male N Chunpeng Lv
last:刪除所有的重復(fù)行,只保留出現(xiàn)的最后一個(gè)
drop_duplicates()&duplicated()的區(qū)別
duplicated和drop_duplicates的功能類似,但前者返回了是否為唯一值的布爾列表,其keep參數(shù)與后者一致。其返回的序列,把重復(fù)元素設(shè)為True,否則為False。drop_duplicates等價(jià)于把duplicated為True的對(duì)應(yīng)行剔除。
4、替換函數(shù)
替換函數(shù)有三類:
映射函數(shù):replace()…
邏輯函數(shù):(1)where(2)mask
數(shù)值替換
replace的用法
Gender Transfer Name 0 Female N Gaopeng Yang 1 Male N Changqiang You 2 Male N Mei Sun 3 Female N Xiaojuan Sun 4 Male N Gaojuan You ............ 195 Female N Xiaojuan Sun 196 Female N Li Zhao 197 Female N Chengqiang Chu 198 Male N Chengmei Shen 199 Male N Chunpeng Lv 200 rows×3 columns
邏輯替換
邏輯替換包括了where和mask,這兩個(gè)函數(shù)是完全對(duì)稱的:where函數(shù)在傳入條件為False的對(duì)應(yīng)行進(jìn)行替換,而mask在傳入條件為True的對(duì)應(yīng)行進(jìn)行替換,當(dāng)不指定替換值時(shí),替換為缺失值(NAN)
s=pd.Series([-1,1.2345,100,-50]) s.where(s<0) 0-1.0 1 NaN 2 NaN 3-50.0 dtype:float64 0-1.0 1 100.0 2 100.0 3-50.0 dtype:float64 0 NaN 1 1.2345 2 100.0000 3 NaN dtype:float64
綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)韼椭?/p>
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/128337.html
摘要:中面向行和面向列的操作基本是平衡的。用層次化索引,將其表示為更高維度的數(shù)據(jù)。使用浮點(diǎn)值表示浮點(diǎn)和非浮點(diǎn)數(shù)組中的缺失數(shù)據(jù)。索引的的格式化輸出形式選取數(shù)據(jù)子集在內(nèi)層中進(jìn)行選取層次化索引在數(shù)據(jù)重塑和基于分組的操作中很重要。 我們?cè)谏弦黄榻B了 NumPy,本篇介紹 pandas。 pandas入門 Pandas 是基于Numpy構(gòu)建的,讓以NumPy為中心的應(yīng)用變的更加簡(jiǎn)單。 pandas...
為什么你需要pandas 大家好,今天想和大家分享一下有關(guān)pandas的學(xué)習(xí)新的,我因工作需要,從去年12月開始接觸這個(gè)非常好用的包,到現(xiàn)在為止也是算是熟悉了一些,因此發(fā)現(xiàn)了它的強(qiáng)大之處,特意想要和朋友們分享,特別是如果你每天和excel打交道,總是需要編寫一些vba函數(shù)或者對(duì)行列進(jìn)行g(shù)roupby啊,merge,join啊之類的,相信我,pandas會(huì)讓你解脫的。 好啦,閑話少說,這篇文章的基礎(chǔ)...
摘要:在這里我分享下我個(gè)人入門機(jī)器學(xué)習(xí)的經(jīng)歷,希望能對(duì)大家能有所幫助。相關(guān)學(xué)習(xí)鏈接,,入門后的體驗(yàn)在入門了機(jī)器學(xué)習(xí)之后,在實(shí)際工作中,絕大多數(shù)的情況下你并不需要去創(chuàng)造一個(gè)新的算法。 機(jī)器學(xué)習(xí)在很多眼里就是香餑餑,因?yàn)闄C(jī)器學(xué)習(xí)相關(guān)的崗位在當(dāng)前市場(chǎng)待遇不錯(cuò),但同時(shí)機(jī)器學(xué)習(xí)在很多人面前又是一座大山,因?yàn)榘l(fā)現(xiàn)它太難學(xué)了。在這里我分享下我個(gè)人入門機(jī)器學(xué)習(xí)的經(jīng)歷,希望能對(duì)大家能有所幫助。 PS:這篇文章...
閱讀 911·2023-01-14 11:38
閱讀 878·2023-01-14 11:04
閱讀 740·2023-01-14 10:48
閱讀 1983·2023-01-14 10:34
閱讀 942·2023-01-14 10:24
閱讀 819·2023-01-14 10:18
閱讀 499·2023-01-14 10:09
閱讀 572·2023-01-14 10:02