drop_duplicates
使用方式应用实例
pandas是Python处理数据时最常用的工具包之一。本文介绍结合自身的实践经历,汇总相关函数的使用方法,供读者参考。
以下内容都需要导入pandas工具包
import pandas as pddrop_duplicates 使用方式
df.drop_duplicates(subset=['A','B','C'],keep='first',inplace=True)
参数说明如下:
subset:表示要进去重的列名,默认为 None。
keep:有三个可选参数,分别是 first、last、False,默认为 first,表示只保留第一次出现的重复项,删除其余重复项,last 表示只保留最后一次出现的重复项,False 则表示删除所有重复项。
inplace:布尔值参数,默认为 False 表示删除重复项后返回一个副本,若为 Ture 则表示直接在原数据上删除重复项。
data = {'A':[1, 0, 1, 1], 'B':[0, 2, 5, 0], 'C':[4, 0, 4, 4], 'D':[1, 0, 1, 1]}
df = pd.Dataframe(data=data)
Out[3]:
A B C D
0 1 0 4 1
1 0 2 0 0
2 1 5 4 1
3 1 0 4 1
df.drop_duplicates() Out[4]: // 删除了第4列 A B C D 0 1 0 4 1 1 0 2 0 0 2 1 5 4 1
df.drop_duplicates(keep='last') Out[6]: // 删除了第0列 A B C D 1 0 2 0 0 2 1 5 4 1 3 1 0 4 1
df.drop_duplicates(keep='last').reset_index(drop=True) Out[8]: // 使用reset_index函数后,可以将行标签重新从0开始排序 A B C D 0 0 2 0 0 1 1 5 4 1 2 1 0 4 1
df.drop_duplicates(keep=False) Out[9]: // 删除了第0列和第3列 A B C D 1 0 2 0 0 2 1 5 4 1
df.drop_duplicates(subset=['D'], keep=False) Out[11]: // 删除了第0,2,3列,他们的D列都是1 A B C D 1 0 2 0 0
原文出自:http://c.biancheng.net/pandas/drop-duplicate.html



