pd.drop_duplicates删除重复行的方法实现

目录
  • 一、使用语法及参数
  • 二、实操
    • 1.例子一
    • 2.例子二
    • 3.删除重复项后重置索引

drop_duplicates 方法实现对数据框 DataFrame 去除特定列的重复行,返回 DataFrame 格式数据。

一、使用语法及参数

使用语法:

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

参数:

  • subset – 指定特定的列 默认所有列
  • keep:{‘first’, ‘last’, False} – 删除重复项并保留第一次出现的项 默认第一个
  • keep=False – 表示删除所有重复项 不保留
  • inplace – 是否直接修改原对象
  • gnore_index=True – 重置索引 (version 1.0.0 才有这个参数)

二、实操

1.例子一

import pandas as pd
df = pd.DataFrame({'a':[1,1,2,2],
                   'b':['a','b','a','b']})

# 单列
df.drop_duplicates('b', 'first', inplace=True)
print(df)
'''
   a  b
0  1  a
1  1  b
'''

# 多列
df.drop_duplicates(subset=['a', 'b'], keep='first', inplace=False)

# 删除所有重复项 不保留
df.drop_duplicates(subset=['a', 'b'], False)

2.例子二

# 构建测试数据框
import pandas as pd
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.drop_duplicates()

# 指定列
df.drop_duplicates(subset=['brand'])

# 保留最后一个重复值
df.drop_duplicates(subset=['brand', 'style'], keep='last')

3.删除重复项后重置索引

# 方法一
df.drop_duplicates(ignore_index=True)

# 方法二
df.drop_duplicates().reset_index(drop=True)

# 方法三
df.index = range(df.shape[0])

到此这篇关于pd.drop_duplicates删除重复行的方法实现的文章就介绍到这了,更多相关pd.drop_duplicates删除重复行内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 聊聊python中令人迷惑的duplicated和drop_duplicates()用法

    前言 在算face_track_id map有感: 开始验证 data={'state':[1,1,2,2,1,2,2,2],'pop':['a','b','c','d','b','c','d','d']} frame=pd.DataFrame(data) frame frame.shape $ (8,2) # 说明duplicated()是对整行进行查重,return 重复了的数据,且只现实n-1条重复的数据(n是重复的次数) frame[frame.duplicated() == True]

  • pandas.DataFrame.drop_duplicates 用法介绍

    如下所示: DataFrame.drop_duplicates(subset=None, keep='first', inplace=False) subset考虑重复发生在哪一列,默认考虑所有列,就是在任何一列上出现重复都算作是重复数据 keep 包含三个参数first, last, False,first是指,保留搜索到的第一个重复数据,之后的都删除:last是指,保留搜索到的最后一个重复数据,之前的搜索到的重复数据都删除,False是指,把所有搜索到的重复数据都删除,一个都不保留,即如果有

  • 详解pandas使用drop_duplicates去除DataFrame重复项参数

    Pandas之drop_duplicates:去除重复项 方法 DataFrame.drop_duplicates(subset=None, keep='first', inplace=False) 参数 这个drop_duplicate方法是对DataFrame格式的数据,去除特定列下面的重复行.返回DataFrame格式的数据. subset : column label or sequence of labels, optional 用来指定特定的列,默认所有列 keep : {'firs

  • Pandas之drop_duplicates:去除重复项方法

    方法 DataFrame.drop_duplicates(subset=None, keep='first', inplace=False) 参数 这个drop_duplicate方法是对DataFrame格式的数据,去除特定列下面的重复行.返回DataFrame格式的数据. subset : column label or sequence of labels, optional 用来指定特定的列,默认所有列 keep : {'first', 'last', False}, default '

  • Python DataFrame使用drop_duplicates()函数去重(保留重复值,取重复值)

    摘要 在进行数据分析时,我们经常需要对DataFrame去重,但有时候也会需要只保留重复值. 这里就简单的介绍一下对于DataFrame去重和取重复值的操作. 创建DataFrame 这里首先创建一个包含一行重复值的DataFrame. 2.DataFrame去重,可以选择是否保留重复值,默认是保留重复值,想要不保留重复值的话直接设置参数keep为False即可. 3.取DataFrame重复值.大多时候我们都是需要将数据去重,但是有时候很我们也需要取重复数据,这个时候我们就可以根据刚刚上面我们

  • pd.drop_duplicates删除重复行的方法实现

    目录 一.使用语法及参数 二.实操 1.例子一 2.例子二 3.删除重复项后重置索引 drop_duplicates 方法实现对数据框 DataFrame 去除特定列的重复行,返回 DataFrame 格式数据. 一.使用语法及参数 使用语法: DataFrame.drop_duplicates(subset=None, keep='first', inplace=False, ignore_index=False) 参数: subset – 指定特定的列 默认所有列 keep:{‘first’

  • 分享SQL Server删除重复行的6个方法

    1.如果有ID字段,就是具有唯一性的字段 复制代码 代码如下: delect table where id not in ( select max(id) from table group by col1,col2,col3... ) group by 子句后跟的字段就是你用来判断重复的条件,如只有col1,那么只要col1字段内容相同即表示记录相同. 2. 如果是判断所有字段也可以这样 复制代码 代码如下: select * into #aa from table group by id1,i

  • php删除文本文件中重复行的方法

    本文实例讲述了php删除文本文件中重复行的方法.分享给大家供大家参考.具体分析如下: 这个php函数用来删除文件中的重复行,还可以指定是否忽略大小写,和指定换行符 /** * RemoveDuplicatedLines * This function removes all duplicated lines of the given text file. * * @param string * @param bool * @return string */ function RemoveDupl

  • shell中删除文件中重复行的方法

    Linux下文本处理工具很丰富很强大,例如这样一个文件: 复制代码 代码如下: cat log www.jb51.net 192.168.1.1www.jb51.net 192.168.1.1www.jb51.net 192.168.1.2ffffffffffffffffffffffffffffffffffffeeeeeeeeeeeeeeeeeeeefffffffffffffffffffeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeggggggggggggggg

  • mysql删除重复行的实现方法

    表relation create table relation( id int primary key auto_increment, userId int not null, fanId int not null ); 插入几条数据 insert into relation(userId,fanId) values(1,1) ,(1,1) ,(1,1), (2,2),(2,2) ,(3,3),(3,3); 表中的数据 id userId fanId 1 1 1 2 1 1 3 1 1 4 2

  • Pandas标记删除重复记录的方法

    Pandas提供了duplicated.Index.duplicated.drop_duplicates函数来标记及删除重复记录 duplicated函数用于标记Series中的值.DataFrame中的记录行是否是重复,重复为True,不重复为False pandas.DataFrame.duplicated(self, subset=None, keep='first') pandas.Series.duplicated(self, keep='first') 其中参数解释如下: subse

  • Python Pandas中DataFrame.drop_duplicates()删除重复值详解

    目录 语法 参数 结果展示 扩展:识别重复值 总结 语法 df.drop_duplicates(subset = None, keep = 'first', inplace = False, ignore_index = False) 参数 1.subset:指定的标签或标签序列,仅删除这些列重复值,默认情况为所有列 2.keep:确定要保留的重复值,有以下可选项: first:保留第一次出现的重复值,默认 last:保留最后一次出现的重复值 False:删除所有重复值 3.inplace:是否

  • MySQL 如何查找删除重复行

    目录 一.如何查找重复行 二.如何删除重复行 三.如何查找多列上的重复 四.错误的查询语句 五.几种正确的方法 一.如何查找重复行 第一步是定义什么样的行才是重复行.多数情况下很简单:它们某一列具有相同的值.本文采用这一定义,或许你对"重复"的定义比这复杂,你需要对sql做些修改. 本文要用到的数据样本: create table test(id int not null primary key, day date not null); insert into test(id, day

  • JS实现为排序好的字符串找出重复行的方法

    本文实例讲述了JS实现为排序好的字符串找出重复行的方法.分享给大家供大家参考,具体如下: 实现这样一个需求,在一个Editplus文档中,有很多行10位的数字,这些数字已经排好序了. 比如: 1234567890 1234567891 1234567892 1234534124 1234614124 4321412414 5636373573 有什么办法能方便的找出两行至少前7位相同的数字吗? 比如,上面的数字中,能够找出 1234567890 1234567891 1234567892 <!D

  • JS实现从表格中动态删除指定行的方法

    本文实例讲述了JS实现从表格中动态删除指定行的方法.分享给大家供大家参考.具体如下: JS的表格对象有一个deleteRow方法用于删除表格中的指定行,只需要指定行号即可 <!DOCTYPE html> <html> <head> <script> function deleteRow(r) { var i=r.parentNode.parentNode.rowIndex; document.getElementById('myTable').deleteR

随机推荐