亲宝软件园·资讯

展开

pd.drop_duplicates删除重复行

Python热爱者 人气:0

drop_duplicates 方法实现对数据框 DataFrame 去除特定列的重复行,返回 DataFrame 格式数据。

一、使用语法及参数

使用语法:

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

参数:

二、实操

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])

加载全部内容

相关教程
猜你喜欢
用户评论