Python 清除重复值

Python012

Python 清除重复值,第1张

from pandas import read_csv

df = read_csv('D://PDA//4.3//data.csv')

df

#找出行重复的位置

dIndex = df.duplicated()

#根据某些列,找出重复的位置

dIndex = df.duplicated('id')

dIndex = df.duplicated(['id', 'key'])

#根据返回值,把重复数据提取出来

df[dIndex]

id  key          value

4  1251147    品牌          Apple

5  1251147  商品名称  苹果iPad mini 3

#直接删除重复值

#默认根据所有的列,进行删除

newDF = df.drop_duplicates()

#当然也可以指定某一列,进行重复值处理

newDF = df.drop_duplicates('id')

这个有几种方法来完成,但是对于不可哈希的数据来说,BIF set() 是无效的,会报错,下面介绍几种方法

对于以上4种方法,各有利弊,一般来说是方法2最快,方法1和方法3比较类似,但是方法3可以保持列表中的排序和之前的一样,但是开头也说了,这样无法对不可哈希的对象进行去重复,比如列表中的元素还是列表,这种情况下就只能用方法4了,但是方法4的缺点就是比较的慢。