在数据分析中,免不了的就是数据的比较和处理。pandas作为数据分析处理常用的python第三方库,他提供了两种数据结构,也对提供了一些比较运算符和比较方法,那么接下来就让我们来看看pandas比较方法有哪些吧。
一、比较运算符和比较方法
比较运算符用于判断是否相等和比较大小,Python中的比较运算符有==、!=、<、>、<=、>=六个,Pandas中也一样。
在Pandas中,DataFrame和Series还支持6个比较方法,详见下表。
方法 | 英文全称 | 用途 |
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 | 大于等于 |
对于比较操作,==和!=支持各种类型的数据互相比较,而<、>、<=、>=对数据类型有限制,如整数可以与浮点数比较大小,但整数不能与字符串比较大小,会报错。这一点,适用于后面的所有比较。
二、两个DataFrame比较
1. 用算术运算符比较
两个DataFrame进行比较,是将DataFrame中对应位置的数据进行比较。
使用比较运算符,两个DataFrame的形状必须相同,索引必须相等(索引顺序必须相同),否则会报错。
2. 用比较方法比较
直接用DataFrame调用比较方法,传入另一个DataFrame,即可完成比较操作。
使用比较方法时,两个DataFrame的形状可以不相同,索引也可以不相同。结果是能兼容两个被比较DataFrame的新DataFrame,原理如下图。
三、两个Series比较
1. 用算术运算符比较
使用比较运算符,两个Series的长度必须相同,索引必须相等(索引顺序必须相同),否则会报错。
2. 用比较方法比较
使用比较方法,两个Series的长度可以不相同,索引也可以不相同。结果是能兼容两个被比较Series的新Series,原理同DataFrame。
四、与数字或字符串比较
1. DataFrame与数字比较
用DataFrame中的每个数据都与数字进行比较,返回对应位置的布尔值,Series同理。比较方法和运算符作用相同。
2. DataFrame与字符串比较
将每个数据都与指定的字符串进行比较,Series同理。比较方法和运算符作用相同。
用多维数据与单个数据进行比较时,要注意数据的类型,如果有不支持的比较,会报错。
五、与array进行比较
比较操作还支持DataFrame或Series与numpy中的array数据进行比较。array没有索引,所以对索引没有要求,但形状必须相同,否则会报错。比较方法和运算符作用相同。
到此这篇pandas比较方法和比较运算符的全部介绍就结束了。更多pandas操作学习请搜索W3Cschool以前的文章或继续浏览下面的相关文章。