Pandas series.duplicated()方法的作用是什么
在数据分析过程中,找出对象中的重复值是一个非常常见的任务。在pandas中,我们有一个名为duplicated()的函数,用于识别重复值。
对于pandas series对象,duplicated()方法将返回一个包含布尔值的series。True表示最后一次出现值或第一次出现值的重复值,或者可能表示所有重复值。
duplicated()方法有一个名为“keep”的参数,用于对待重复值进行不同的处理。该参数的默认行为是“first”,这意味着它将所有重复值标记为True,除了第一次出现的值。我们可以将其更改为“last”和False,以标记所有出现的值。
示例1
在下面的示例中,我们创建了一个带有字符串列表的pandas series,然后应用了duplicated()方法,但没有改变默认参数。
# importing required packages
import pandas as pd
# creating pandas Series object
series = pd.Series(['A', 'B', 'E', 'C', 'A', 'E'])
print(series)
# apply duplicated() method
print("Output:",series.duplicated())
输出
输出结果如下 –
0 A
1 B
2 E
3 C
4 A
5 E
dtype: object
Output:
0 False
1 False
2 False
3 False
4 True
5 True
dtype: bool
duplicated() 方法返回一个具有布尔值的新系列对象。在索引位置 4 和 5 的值被标记为 True,因为 A 和 E 之前已经出现过,其余所有值都只出现一次。
示例2
对于下面的示例,我们将 keep 参数的值设置为 last,以便识别第一次出现的重复值。
# importing required packages
import pandas as pd
# creating pandas Series object
series = pd.Series([90,54,43,90,28,43,67])
print(series)
# apply duplicated() method
print("Output:",series.duplicated(keep='last'))
输出
以下是输出结果:
0 90
1 54
2 43
3 90
4 28
5 43
6 67
dtype: int64
Output:
0 True
1 False
2 True
3 False
4 False
5 False
6 False
dtype: bool
除了给定的系列对象中最后一次发生的重复值,我们已成功检测到重复的值。索引位置0和2的值被标记为True,因为90和43在系列对象中出现多次,而其余的只出现一次。