pandas.duplicated()
方法用于判断DataFrame或Series中的哪些项是重复的。
参数说明:
subset
(可选参数):指定特定的列,用于判断重复。默认为空(None),表示所有列均相同情况下被认为是重复项。keep
(可选参数):在有重复项的情况下,如何处理其余重复项。first
(默认值):保留首次出现的项。last
: 保留最后一次出现的项。False
:所有出现的项都被视为重复项。
可以使用pandas.DataFrame.duplicated()
或者pandas.Series.duplicated()
来调用该方法。
下面是两个具体的实例:
首先,我们创建一个完整的DataFrame示例,并使用pandas.duplicated()
方法查找重复项。
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3, 3], 'B': [4, 5, 6, 6], 'C': [7, 8, 9, 9]})
# 查找重复项
result = df.duplicated()
# 查看结果
print(result)
运行结果:
0 False
1 False
2 False
3 True
dtype: bool
可以看到,该DataFrame中第4行与第3行的数据完全相同,因此第4行被视为重复项,返回了True
。这样的返回结果对于大型数据集尤为有用。
接着,我们使用subset
参数来指定特定列进行查找重复项。
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3, 3], 'B': [4, 5, 6, 5], 'C': [7, 8, 9, 8]})
# 指定 'B' 和 'C' 列进行查找重复项
result = df.duplicated(subset=['B', 'C'])
# 查看结果
print(result)
运行结果:
0 False
1 False
2 False
3 True
dtype: bool
可以看到,该DataFrame中第4行的’B’和’C’列的值与第2行的完全相同,因此第4行被视为重复项,返回了True
。
在实际开发中,pandas.duplicated()
也可以与drop_duplicates()
方法一起使用,来删除数据集中的重复项,示例如下:
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3, 3], 'B': [4, 5, 6, 5], 'C': [7, 8, 9, 8]})
# 删除重复项并保留唯一项
df = df.drop_duplicates()
# 查看结果
print(df)
运行结果:
A B C
0 1 4 7
1 2 5 8
2 3 6 9
可以看到,所有的重复项被移除了,只留下了唯一项。
以上就是pandas.duplicated()
方法的作用与使用方法的完整攻略,包括参数说明、示例和删除重复项等。