常见的数据重复包括:

1.记录重复--一个或多个特征的某条记录的值完全相同

2.特征重复--存在一个或者多个特征名称不同,但数据完全相同的情况

去除‘记录重复’的3种方法


# coding: utf-8

# 去除‘记录重复’的3种方法

# 法1---利用list去重

import pandas as pd
detail=pd.read_csv(r'D:\save\detail.csv',index_col=0,encoding='gbk')

# 定义去重函数
def delRep(list1):
    list2=[]
    for i in list1:
        if i not in list2:
            list2.append(i)
    return list2

dishes=list(detail['dishes_name'])

print('去重之前菜品总数:',len(dishes))

dish=delRep(dishes)

print('去重之后菜品总数:',len(dish))


# 法2--利用set元素唯一的特性去重

print('去重之前菜品总数:',len(dishes))

dish_set=set(dishes)

print('利用set元素唯一的特性去重',len(dish_set))


# 法3---pandas模块中的drop_duplicates去重方法,只对DataFrame和Series有效

dishes_name=detail['dishes_name'].drop_duplicates()

print('drop_duplicates方法去重之后',len(dishes_name))


# 使用drop_duplicates去重方法对多列去重

print('去重之前',detail.shape)

shapeDet=detail.drop_duplicates(subset=['order_id','emp_id']).shape

print('依照订单号,会员编号去重之后订单详情表大小为:',shapeDet)