当数据中出现了
重复值
,在大多数情况下需要进行删除
。
name | score |
---|---|
agou | 99.0 |
someone | 78.0 |
agou | 99.0 |
ahua | 89.0 |
Pandas提供了两个函数专门用来处理数据中的重复值,分别为
duplicated()
和drop_duplicates()
方法。
duplicated()
方法用于标记是否有重复值
。drop_duplicates()
方法用于删除重复值
。- 它们的判断标准是
一样
的,即只要两条数据中所有条目的值完全相等
,就判断为重复值
。
duplicated()
方法的语法格式如下:
duplicated(subset=None, keep='first')
subset
:用于识别重复
的列标签或列标签序列,默认识别所有
的列标签。keep
:删除重复项
并保留第一次出现的项
,取值可以为first
、last
或False
。
duplicated()
方法用于标记Pandas对象的数据是否重复
,重复则标记为True,不重复则标记为False,所以该方法返回一个由布尔值组成的Series
对象,它的行索引保持不变
,数据
则变为标记的布尔值。
对于
duplicated()
方法,这里有如下两点要进行强调
:
- 只有数据表中两个条目间所有列的内容都相等时,
duplicated()
方法才会判断为重复值。 duplicated()
方法支持从前向后(first)
和从后向前(last)
两种重复值查找模式,默认是从前向后
查找判断重复值的。换句话说,就是将后出现
的相同条目判断为重复值。
drop_duplicates()
方法的语法格式如下:
drop_duplicates(subset=None, keep='first', inplace=False)
上述方法中,inplace
参数接收一个布尔类型的值,表示是否替换
原来的数据,默认为False
。