Posted in Python onJune 16, 2022
drop_duplicates 方法实现对数据框 DataFrame 去除特定列的重复行,返回 DataFrame 格式数据。
一、使用语法及参数
使用语法:
DataFrame.drop_duplicates(subset=None, keep='first', inplace=False, ignore_index=False)
参数:
- subset – 指定特定的列 默认所有列
- keep:{‘first’, ‘last’, False} – 删除重复项并保留第一次出现的项 默认第一个
- keep=False – 表示删除所有重复项 不保留
- inplace – 是否直接修改原对象
- gnore_index=True – 重置索引 (version 1.0.0 才有这个参数)
二、实操
1.例子一
import pandas as pd
df = pd.DataFrame({'a':[1,1,2,2],
'b':['a','b','a','b']})
# 单列
df.drop_duplicates('b', 'first', inplace=True)
print(df)
'''
a b
0 1 a
1 1 b
'''
# 多列
df.drop_duplicates(subset=['a', 'b'], keep='first', inplace=False)
# 删除所有重复项 不保留
df.drop_duplicates(subset=['a', 'b'], False)
2.例子二
# 构建测试数据框
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.drop_duplicates()
# 指定列
df.drop_duplicates(subset=['brand'])
# 保留最后一个重复值
df.drop_duplicates(subset=['brand', 'style'], keep='last')
3.删除重复项后重置索引
# 方法一
df.drop_duplicates(ignore_index=True)
# 方法二
df.drop_duplicates().reset_index(drop=True)
# 方法三
df.index = range(df.shape[0])
到此这篇关于pd.drop_duplicates删除重复行的方法实现的文章就介绍到这了,更多相关pd.drop_duplicates删除重复行内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!
pd.drop_duplicates删除重复行的方法实现
- Author -
Python热爱者- Original Sources -
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@