panda Datafareme 删除重复数据,保留重复数据

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

参数

#用来指定特定的列,默认所有列

subset : column label or sequence of labels, optional

# keep='first'删除重复项并保留第一次出现的数据,#keep='first'删除重复项并保留最后出现的数据,#keep= False 删除所有重复数据

keep : {‘first', ‘last', False}, default ‘first'

是直接在原来数据上修改还是保留一个副本

True是在原数据上修改

inplace : boolean, default False

保留重复数据  思路和代码:

注意使用   inplace=False 不破坏原有数据,产生新数据。原有数据在第2步还要用到

 1 #1:使用keep=‘first’参数,保留首次出现的重复项,删除后出现的。 这时数据保留了 之前不重复数据+首次出现的重复数据,
 2 a=df.drop_duplicates(subset=None, keep='first', inplace=False)
 3 
 4 #2:使用keep=‘False’参数,删除所有重复的数据。这时数据保留了 之前不重复数据。
 5 b=df.drop_duplicates(subset=None, keep=False, inplace=False)
 6 
 7 #3.把两个数据连接起来,在删除所有重复的数据,就得到了 之前重复的数据。
 8 #   意思是: (之前不重复数据+首次出现的重复数据)+(之前不重复数据) - 之前不重复数据*2 =首次出现的重复数据
 9 c=a.append(b).drop_duplicates(keep=False)
10 print len(a),len(b)
11 print c

 输出得到结果:

猜你喜欢

转载自www.cnblogs.com/HL-blog/p/9030226.html
今日推荐