python中dataframe怎么去重_pandasdataframe重复数据查看.判断.去重

Apple iPhone 11 (A2223) 128GB 黑色 移动联通电信4G手机 双卡双待

4999元包邮

去购买 >

本文详解如何使用pandas查看dataframe的重复数据,判断是否重复,以及如何去重

dataframe数据样本:

import pandas as pd

df = pd.DataFrame({'name':['苹果','梨','草莓','苹果'], 'price':[7,8,9,8], 'cnt':[3,4,5,4]})

name cnt price

0 苹果 3 7

1 梨 4 8

2 草莓 5 9

3 苹果 6 8

>> 查看dataframe的重复数据

a = df.groupby('price').count()>1

price = a[a['cnt'] == True].index

repeat_df = df[df['price'].isin(price)]

>>duplicated()方法判断

1. 判断dataframe数据某列是否重复

flag = df.price.duplicated()

0 False

1 False

2 False

3 True

Name: price, dtype: bool

flag.any()结果为True (any等于对flag or判断)

flag.all()结果为False (all等于对flag and判断)

2. 判断dataframe数据整行是否重复

flag = df.duplicated()

判断方法同1

3. 判断dataframe数据多列数据是否重复(多列组合查)

df.duplicated(subset = ['price','cnt'])

判断方法同1

>> drop_duplicats()方法去重

1. 对dataframe数据数据去重

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

示例:

df.drop_duplicats(subset = ['price','cnt'],keep='last',inplace=True)

drop_duplicats参数说明:

参数subset

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

参数keep

keep可以为first和last,表示是选择最前一项还是最后一项保留,默认first

参数inplace

inplace是直接在原来数据上修改还是保留一个副本,默认为False

原文链接:https://www.cnblogs.com/trotl/p/11876292.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值