pandas.DataFrame.duplicated#
- DataFrame.duplicated(subset=None, keep='first')[源代码][源代码]#
返回表示重复行的布尔序列。
考虑某些列是可选的。
- 参数:
- 子集列标签或标签的可迭代对象,可选
默认情况下使用所有列来识别重复项,但也可以仅考虑某些列。
- 保持{‘first’, ‘last’, False}, 默认 ‘first’
确定要标记哪些重复项(如果有)。
first
: 将重复项标记为True
,除了第一次出现。last
: 将重复项标记为True
,除了最后一次出现。False : 将所有重复项标记为
True
。
- 返回:
- 系列
每个重复行的布尔序列。
参见
Index.duplicated
index上的等效方法
Series.duplicated
Series 上的等效方法。
Series.drop_duplicates
从 Series 中移除重复值。
DataFrame.drop_duplicates
从 DataFrame 中删除重复值。
示例
考虑包含拉面评分的数据集。
>>> 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 brand style rating 0 Yum Yum cup 4.0 1 Yum Yum cup 4.0 2 Indomie cup 3.5 3 Indomie pack 15.0 4 Indomie pack 5.0
默认情况下,对于每组重复的值,第一次出现设置为 False,所有其他设置为 True。
>>> df.duplicated() 0 False 1 True 2 False 3 False 4 False dtype: bool
通过使用 ‘last’,每组重复值的最后一次出现被设置为 False,所有其他出现被设置为 True。
>>> df.duplicated(keep="last") 0 True 1 False 2 False 3 False 4 False dtype: bool
通过将
keep
设置为 False,所有重复项都为 True。>>> df.duplicated(keep=False) 0 True 1 True 2 False 3 False 4 False dtype: bool
要在特定列中查找重复项,请使用
subset
。>>> df.duplicated(subset=["brand"]) 0 False 1 True 2 False 3 True 4 True dtype: bool