1 drop_duplicates与duplicated参数:
- DataFrame.duplicated(subset=None,keep=‘first’)
- DataFrame.drop_duplicates(subset=None, keep=‘first’, inplace=False)
- subset:列标签,可选, 默认使用所有列,只考虑某些列来识别重复项传入列标签或者列标签的序列
- keep:{‘first’,‘last’,False},默认’first’
-
first:删除第一次出现的重复项。
-
last:删除重复项,除了最后一次出现。
-
“false”:删除所有重复项
-
- inplace:是否替换原数据,默认是生成新的对象,可以复制到新的DataFrame,如果设置为True则乎替换原有数据,通常不建议设置为True
- inplace参数的定义在pandas中有点类似,上述说法也可以对比rename函数中的inplace参数的作用
https://zhuanlan.zhihu.com/p/470913844
2 duplicated函数
- subset=None默认情况下去重
import pandas as pd
df = pd.DataFrame({
'brand': ['Yum Yum', 'Yum Yum', 'Indomie', 'Indomie', 'Indomie'],
'style': ['cup', 'cup', 'cup', 'pack', 'pack'],
'rating': [4, 4, 3.5, 15, 5]
})
df
df.duplicated()

- 显然是全部列都标识作为去重条件
- subset=[‘brand’,‘style’] 时候

- 可以看到用duplicated函数返回的都是布尔类型的结果,为方便展示,接下来的参数功能使用drop_duplicates函数结果
- keep(默认为保留第一个“first”)

- keep(保留最后一个“last”)

- keep(删除所有重复值“false”)

- inplace=True 对原DF进行修改,不返回新的对象

- inplace=False 不对原DF进行修改,返回新的对象

参考资料
- https://zhuanlan.zhihu.com/p/58976044
- https://blog.youkuaiyun.com/weixin_42097208/article/details/112403720
本文详细介绍了Pandas库中用于数据去重的两个关键函数:duplicated()和drop_duplicates()。duplicated()函数返回布尔型Series,标记数据框中重复的行;drop_duplicates()函数则根据指定条件删除重复行。参数subset用于选择特定列进行去重,keep参数决定了保留第一次出现('first')还是最后一次出现('last')的记录,或者删除所有重复('false')的记录。inplace参数决定是否直接在原始数据框上进行操作。通过实例展示了如何使用这两个函数进行数据清洗。
2357

被折叠的 条评论
为什么被折叠?



