目录
  • 语法
  • 参数
  • 结果展示
  • 扩展:识别重复值
  • 总结

语法

df.drop_duplicates(subset = None,
                   keep = 'first', 
                   inplace = False, 
                   ignore_index = False)

参数

1.subset:指定的标签或标签序列,仅删除这些列重复值,默认情况为所有列

2.keep:确定要保留的重复值,有以下可选项:

first:保留第一次出现的重复值,默认

last:保留最后一次出现的重复值

False:删除所有重复值

3.inplace:是否生效

4.ignore_index:如果为True,则重新分配自然索引(0,1,…,n – 1)

# 删除重复值 DataFrame.drop_duplicates()
import pandas as pd
 
df = pd.DataFrame([['x','x',1],['x','x',1],['z','x',2]], columns = ['A','B','C'])
 
# 删除重复行
res1 = df.drop_duplicates()
 
# 删除指定列
res2 = df.drop_duplicates(subset = ['A'])
 
# 保留最后一个
res3 = df.drop_duplicates(subset = ['A'], keep = 'last')

结果展示

df

Python Pandas中DataFrame.drop_duplicates()删除重复值详解

res1

Python Pandas中DataFrame.drop_duplicates()删除重复值详解

res2

Python Pandas中DataFrame.drop_duplicates()删除重复值详解

res3

Python Pandas中DataFrame.drop_duplicates()删除重复值详解

扩展:识别重复值

import pandas as pd
 
df = pd.DataFrame({
    'studentID':['A001','A002','A003','A004','A005','A006','A006'],
    'score':[100,93,94,96,93,95,95]})
 
# 识别重复值
duplicate_value = df[df.duplicated()]

df

Python Pandas中DataFrame.drop_duplicates()删除重复值详解

由上图可知studentID为'A006'的记录有两条,我们可以使用duplicated()方法识别重复值,它返回的是布尔值结果(True:有重复值,False:无重复值)

Python Pandas中DataFrame.drop_duplicates()删除重复值详解

duplicate_value

Python Pandas中DataFrame.drop_duplicates()删除重复值详解

总结

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。