基本方法:
Pandas中数据去重一般是用duplicated()和drop_duplicates()两个方法进行相结合
函数介绍:
(1)duplicated 返回一个布尔向量,其长度为行数,表示行是否重复。
参数介绍:
- subset:列标签或标签序列,可选;仅考虑用于标识重复项的某些列,默认情况下使用所有列。
- keep:{‘first’,‘last’,‘False’},默认’first’;
first:标记重复,True除了第一次出现。
last:标记重复,True除了最后一次出现。
False:将所有重复项标记为True。
(2)drop_duplicates 对指定的列进行删除操作。
- subset : 指定列,默认情况下使用所有列
- keep : {‘first’,‘last’,‘false’},默认’first’
first :删除重复项保留第一次出现的。
last :删除重复项保留最后一次出现的。
false:删除所有重复项。 - inplace : 布尔值,默认为False 是否删除重复项或返回副本
用法示例:
movies_df.shape
(45463, 2)
movies_df.duplicated(['id', 'title'])
movies_df.duplicated(['id', 'title']).sum() #返回重复项总数
30
movies_df.drop_duplicates(['id'], inplace=True) #数据去重
movies_df.shape
(45433, 2)
总结:
对于数据去重,一般通过duplicated()和 drop_duplicates()函数相结合进行实现。自己也是菜鸟,大家有什么好的方法可以一起讨论。