当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pandas.DataFrame.drop_duplicates用法及代码示例


用法:

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

返回删除重复行的 DataFrame。

考虑某些列是可选的。索引(包括时间索引)将被忽略。

参数

subset列标签或标签序列,可选

仅考虑某些列来识别重复项,默认情况下使用所有列。

keep{‘first’, ‘last’, False},默认 ‘first’

确定要保留哪些重复项(如果有)。 - first :删除除第一次出现的重复项。 - last :删除除最后一次出现的重复项。 - 错误:删除所有重复项。

inplace布尔值,默认为 False

是否将重复项放在适当的位置或返回副本。

ignore_index布尔值,默认为 False

如果为 True,则生成的轴将标记为 0、1、...、n - 1。

返回

DataFrame 或无

如果 inplace=True ,则删除重复项的 DataFrame 或 None 。

例子

考虑包含拉面评级的数据集。

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

默认情况下,它会根据所有列删除重复的行。

>>> df.drop_duplicates()
    brand style  rating
0  Yum Yum   cup     4.0
2  Indomie   cup     3.5
3  Indomie  pack    15.0
4  Indomie  pack     5.0

要删除特定列上的重复项,请使用 subset

>>> df.drop_duplicates(subset=['brand'])
    brand style  rating
0  Yum Yum   cup     4.0
2  Indomie   cup     3.5

要删除重复项并保留最后一次出现,请使用 keep

>>> df.drop_duplicates(subset=['brand', 'style'], keep='last')
    brand style  rating
1  Yum Yum   cup     4.0
2  Indomie   cup     3.5
4  Indomie  pack     5.0

相关用法


注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.DataFrame.drop_duplicates。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。