pandas DataFrame 删除重复的行的实现方法

yipeiwu_com6年前Python基础

1. 建立一个DataFrame

 C=pd.DataFrame({'a':['dog']*3+['fish']*3+['dog'],'b':[10,10,12,12,14,14,10]})

2. 判断是否有重复项

用duplicated( )函数判断  

C.duplicated()

3.  有重复项,则可以用drop_duplicates()移除重复项

C.drop_duplicates()

4. Duplicated( )和drop_duplicates( )方法是以默认的方式判断全部的列(上面的例子中是看两个变量a和b是否都是重复出现)。

我们也可以对特定的列进行重复项判断。

 C.duplicated(['a'])   C.drop_duplicates(['a'])

 C.duplicated(['b'])   C.drop_duplicates(['b'])

5.  norepeat_df = df.drop_duplicates(subset=['A_ID', 'B_ID'], keep='first')

#上面的命令去掉UNIT_ID和KPI_ID列中重复的行,并保留重复出现的行中第一次出现的行

补充: 

  • 当keep=False时,就是去掉所有的重复行 
  • 当keep=‘first'时,就是保留第一次出现的重复行 
  • 当keep='last'时就是保留最后一次出现的重复行。 

(注意,这里的参数是字符串,要加引号!!!)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python使用random和tertools模块解一些经典概率问题

random 模块中的常用函数 复制代码 代码如下: random() 返回一个位于区间 [0,1] 内的实数; uniform(a, b) 返回一个位于区间 [a,b] 内的实数; r...

Python编程生成随机用户名及密码的方法示例

本文实例讲述了Python编程生成随机用户名及密码的方法。分享给大家供大家参考,具体如下: 方案一: import random global userName,userPasswo...

python使用PIL模块获取图片像素点的方法

如下所示: from PIL import Image ########获取图片指定像素点的像素 def getPngPix(pngPath = "aa.png",pixelX =...

Python SQLAlchemy入门教程(基本用法)

本文将以Mysql举例,介绍sqlalchemy的基本用法。其中,Python版本为2.7,sqlalchemy版本为1.1.6。 一. 介绍 SQLAlchemy是Python中最有名...

全面了解Python的getattr(),setattr(),delattr(),hasattr()

1. getattr()函数是Python自省的核心函数,具体使用大体如下: class A: def __init__(self): self.name = 'zhangji...