App下載

pandas怎么進(jìn)行比較?

猿友 2021-07-26 11:08:09 瀏覽數(shù) (6486)
反饋

在數(shù)據(jù)分析中,免不了的就是數(shù)據(jù)的比較和處理。pandas作為數(shù)據(jù)分析處理常用的python第三方庫(kù),他提供了兩種數(shù)據(jù)結(jié)構(gòu),也對(duì)提供了一些比較運(yùn)算符和比較方法,那么接下來(lái)就讓我們來(lái)看看pandas比較方法有哪些吧。

一、比較運(yùn)算符和比較方法

比較運(yùn)算符用于判斷是否相等和比較大小,Python中的比較運(yùn)算符有==、!=、<、>、<=、>=六個(gè),Pandas中也一樣。

在Pandas中,DataFrame和Series還支持6個(gè)比較方法,詳見(jiàn)下表。

方法 英文全稱 用途
eq equal to 等于
ne not equal to 不等于
lt less than 小于
gt greater than 大于
le less than or equal to 小于等于
ge greater than or equal to 大于等于

對(duì)于比較操作,==和!=支持各種類型的數(shù)據(jù)互相比較,而<、>、<=、>=對(duì)數(shù)據(jù)類型有限制,如整數(shù)可以與浮點(diǎn)數(shù)比較大小,但整數(shù)不能與字符串比較大小,會(huì)報(bào)錯(cuò)。這一點(diǎn),適用于后面的所有比較。

二、兩個(gè)DataFrame比較

1. 用算術(shù)運(yùn)算符比較

用算數(shù)運(yùn)算符比較

兩個(gè)DataFrame進(jìn)行比較,是將DataFrame中對(duì)應(yīng)位置的數(shù)據(jù)進(jìn)行比較。

使用比較運(yùn)算符,兩個(gè)DataFrame的形狀必須相同,索引必須相等(索引順序必須相同),否則會(huì)報(bào)錯(cuò)。

2. 用比較方法比較

直接用DataFrame調(diào)用比較方法,傳入另一個(gè)DataFrame,即可完成比較操作。

比較方法比較

使用比較方法時(shí),兩個(gè)DataFrame的形狀可以不相同,索引也可以不相同。結(jié)果是能兼容兩個(gè)被比較DataFrame的新DataFrame,原理如下圖。

原理

三、兩個(gè)Series比較

1. 用算術(shù)運(yùn)算符比較

算術(shù)運(yùn)算符比較

使用比較運(yùn)算符,兩個(gè)Series的長(zhǎng)度必須相同,索引必須相等(索引順序必須相同),否則會(huì)報(bào)錯(cuò)。

2. 用比較方法比較

用比較方法比較

使用比較方法,兩個(gè)Series的長(zhǎng)度可以不相同,索引也可以不相同。結(jié)果是能兼容兩個(gè)被比較Series的新Series,原理同DataFrame。

四、與數(shù)字或字符串比較

1. DataFrame與數(shù)字比較

與數(shù)字或字符串比較

用DataFrame中的每個(gè)數(shù)據(jù)都與數(shù)字進(jìn)行比較,返回對(duì)應(yīng)位置的布爾值,Series同理。比較方法和運(yùn)算符作用相同。

2. DataFrame與字符串比較

與字符串比較

將每個(gè)數(shù)據(jù)都與指定的字符串進(jìn)行比較,Series同理。比較方法和運(yùn)算符作用相同。

用多維數(shù)據(jù)與單個(gè)數(shù)據(jù)進(jìn)行比較時(shí),要注意數(shù)據(jù)的類型,如果有不支持的比較,會(huì)報(bào)錯(cuò)。

五、與array進(jìn)行比較

與數(shù)組比較

比較操作還支持DataFrame或Series與numpy中的array數(shù)據(jù)進(jìn)行比較。array沒(méi)有索引,所以對(duì)索引沒(méi)有要求,但形狀必須相同,否則會(huì)報(bào)錯(cuò)。比較方法和運(yùn)算符作用相同。

到此這篇pandas比較方法和比較運(yùn)算符的全部介紹就結(jié)束了。更多pandas操作學(xué)習(xí)請(qǐng)搜索W3Cschool以前的文章或繼續(xù)瀏覽下面的相關(guān)文章。


0 人點(diǎn)贊