详解pandas.duplicated()(检测重复值)函数使用方法

您所在的位置:网站首页 excel如何检查是否有重复的数据 详解pandas.duplicated()(检测重复值)函数使用方法

详解pandas.duplicated()(检测重复值)函数使用方法

2024-06-29 07:07| 来源: 网络整理| 查看: 265

pandas.duplicated()是Pandas库中的一个函数,用于查找和标记重复值。它返回一个布尔值的数组,指示每个元素是否为重复项。

使用方法

语法:

pandas.duplicated(subset=None, keep=’first’)

参数:

subset: 可选,用于标识重复项的列名或列名列表。默认情况下,它比较整个行。 keep: 可选,标记重复项的方式。如果为’first’,表示第一个出现的项不会被标记为重复;如果为’last’,则最后出现的项不会被标记为重复;如果为False,则所有重复项都会标记为True。默认为’first’。 示例1

首先需要导入Pandas库,并读入数据:

import pandas as pd df = pd.read_csv('data.csv')

我们来看下data.csv数据文件的内容:

ID Name Age 101 John 25 102 Tom 26 103 Mary 25 104 John 25 105 Lucy 28 106 John 25

我们可以看到,其中ID为101的John、ID为104的John、以及ID为106的John出现了重复。

现在我们来使用duplicated()函数查找重复项:

df['Duplicated'] = df.duplicated(['Name', 'Age'], keep=False)

在这里,我们使用duplicated()函数,并将keep参数设置为False,即所有重复项都会被标记为True。我们还将返回的结果存储在一个新列“Duplicated”中。我们使用[‘Name’,‘Age’]来指定要查找重复项的列。

现在我们来查看查找到的重复项:

print(df[df['Duplicated']==True])

输出结果为:

ID Name Age Duplicated 0 101 John 25 True 3 104 John 25 True 5 106 John 25 True

我们可以看到,三个John的ID被标记为了True。

示例2

现在我们来看另一个示例,假设我们有一个包含学生考试成绩的数据集:

data = {'Name': ['John', 'Mary', 'Tom', 'Lucy', 'John', 'Tom', 'Mary'], 'Maths': [89, 92, 78, 83, 89, 78, 92], 'Physics': [92, 94, 87, 80, 92, 87, 94], 'Chemistry': [85, 83, 82, 79, 85, 82, 83]} df = pd.DataFrame(data)

我们可以看出,ID为1和5的学生John的考试成绩完全一样,即数学成绩都是89分,物理成绩都是92分,化学成绩都是85分。

现在我们来使用duplicated()函数查找重复项:

df['Duplicated'] = df.duplicated(['Maths', 'Physics', 'Chemistry'], keep=False)

在这里,我们使用duplicated()函数,并将keep参数设置为False,即所有重复项都会被标记为True。我们还将返回的结果存储在一个新列“Duplicated”中。我们使用[‘Maths’,‘Physics’,‘Chemistry’]来指定要查找重复项的列。

现在我们来查看查找到的重复项:

print(df[df['Duplicated']==True])

输出结果为:

Name Maths Physics Chemistry Duplicated 0 John 89 92 85 True 4 John 89 92 85 True

我们可以看到,John的ID为1和5的行被标记为了True,因为他们的考试成绩完全一样。这可以帮助我们更轻松地查找并删除重复的数据。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解pandas.duplicated()(检测重复值)函数使用方法 - Python技术站



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3