Pandas数据去重:drop_duplicates函数详解

Pandas数据去重:drop_duplicates函数详解DataFrame.drop_duplicates(subset=None, keep=’first’, inplace=False)参数解释:subset:列名,默认所有的列 keep:是否保留{‘first’,‘last’,False},keep= ‘first’ 表示去重时每组重复数据保留第一条数据,其余数据丢弃; keep=’last’ 表示去重时每组重复数据保留最后一条…

大家好,欢迎来到IT知识分享网。Pandas数据去重:drop_duplicates函数详解"

DataFrame.drop_duplicates(subset=Nonekeep=’first’inplace=False)


参数解释:

  • subset: 列名,默认所有的列
  • keep: 是否保留{‘first’, ‘last’, False}keep= ‘first’ 表示去重时每组重复数据保留第一条数据,其余数据丢弃; keep=’last’ 表示去重时每组重复数据保留最后一条数据,其余数据丢弃;keep=False 表示去重时每组重复数据全部丢弃,不保留
  • inplace: 是否替换{False, True}inplace=False表示去重之后不覆盖原表格数据,inplace=True表示去重之后原表格数据被覆盖

一、仅去除重复项

下面给出部分代码示例,可自行粘贴运行对比,推荐spyder / jupyter notebook, 方便查看数据结构。

# A列中1重复两次(index=0/2)
In [6]: data  
Out[6]: 
   A  B  C
0  1  1  1
1  2  2  2
2  1  3  3
3  3  4  4

# A列去重,两条重复数据保留第一条(index=0),第二条数据丢弃(index=2)。
In [7]: data.drop_duplicates(subset='A',keep='first',inplace=False)
Out[7]: 
   A  B  C
0  1  1  1
1  2  2  2
3  3  4  4

# A列去重,两条重复数据保留最后一条(index=2),第一条数据丢弃(index=0)。
In [7]: data.drop_duplicates(subset='A',keep='first',inplace=False)
Out[7]: 
   A  B  C
1  2  2  2
2  1  3  3
3  3  4  4

二、提取重复项

提取重复项?两次去除重复项即可,思路如下。

#第一步: 去重,将重复数据丢弃
In [10]: data1=data.drop_duplicates(subset='A',keep=False,inplace=False)

#第二步:去重,保留一组重复数据
In [11]: data2=data.drop_duplicates(subset='A',keep='first',inplace=False)

#第三步:将data1与data2合并后去重且丢弃重复数据
#(data1与data2合并后, 此时原表里面非重复数据变成了两份,去重丢弃这些重复数据之后,剩下的数据即为所求)
In [12]:data1.append(data2).drop_duplicates(subset='A',keep=False,inplace=False)
Out[12]: 
   A  B  C
0  1  1  1

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/11391.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信