赞
踩
DataFrame.drop_duplicates
(subset=None, keep='first', inplace=False)参数解释:
一、仅去除重复项
下面给出部分代码示例,可自行粘贴运行对比,推荐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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。