Python如何对Excel文档进行去重操作?

好东西小编 休闲生活 2023-03-06

我们今天的主题是扒一扒我们之前的Python代码操作——去重操作

import pandas as pd
df=pd.read_excel(‘淘宝洗发水.xlsx’,sheet_name=’原始数据’)
df=df.drop_duplicates(subset=[‘产品标题’,’价格’],keep=False)
df.to_excel(excel_writer=‘淘宝洗发水-操作后.xlsx’)

上面这段代码的主要内容是打开我们需要进行操作的Excel文档里面的指定sheet表格,之后选定“产品标题”和“价格”这两列数据,以这两列数据作为标的,也就是说如果这两列数据里面出现重复的,那就把这一整行数据进行相对应的去重操作。

subset=[‘产品标题’,’价格’]

上面这行代码的意思是我们进行去重的时候要以“产品标题”、“价格”这两列作为重复判断标准,如果还有其他列的话,那就继续加,记住要以列表的形式添加。

如果只是一列的话,那就不用列表了,可以直接以字符串赋值即可。

keep=False

上面这个keep参数可以根据我们自己的喜好进行调整,比方说上面这个False的意思就是说只要出现重复值,我就全部删掉,一个都不留。


但如果我们需要保留其中一个值的话,我们可以不提keep这个参数,也就是说,我们可以输入如下的代码进行操作即可

df=df.drop_duplicates(subset=[‘产品标题’,’价格’])

上面的代码虽然没有明确出现keep,但实际上是有一个默认的赋值给keep这个参数的,因此我们如果想要保留一个值的话,可以不用特意赋值。

但如果有特殊需求的话,可以提一下并给keep赋值。

就如前面提到的不想保留任意一个存在重复值的行,就可以赋值False,若要是想要保留最后一个值的话,可以输入如下的代码进行操作


df=df.drop_duplicates(subset=[‘产品标题’,’价格’],keep=’last’)

记住一定要用字符串的形式赋值!


当然,你也可以为了更好地记忆这个函数,输入如下的代码进行操作


df=df.drop_duplicates(subset=[‘产品标题’,’价格’],keep=’first’)


没错,这就是默认的参数赋值。


好了,说完了特殊需求,我们来看一下最开始的那个最原始的去重操作代码


import pandas as pd

df=pd.read_excel(‘淘宝洗发水.xlsx’,sheet_name=’原始数据’)

df=df.drop_duplicates()

df.to_excel(excel_writer=‘淘宝洗发水-操作后.xlsx’)


没错,上面这段代码的操作就是最原始、最简单的了,它是按照Excel表格里面的去重操作来进行的,也就是说它是对整行数据进行比对,如果整行数据都一样就判定为重复数据,然后只保留个数据,其他的全部删除掉。

总结一下,Python操作Excel文档进行去重操作的重点函数是

drop_duplicates()

大家一定要记住这个函数,如果有需要的话,可以在括号里面添加各式各样的参数,进行你们各自需要的个性化去重处理!


版权声明

本文来源于网络,仅代表作者观点,不代表好东西立场,如有侵权,请联系站长删除

nei01.jpgnei02.jpgnei03.jpgnei04.jpg


好文推荐