只需10行代码就能对Excel文件进行批量去重~
共 2023字,需浏览 5分钟
·
2022-01-21 01:51
我今天就来跟大家分享一下:如何实现不同的Excel文件去重,并重新写入~
01
去重
我们使用Pandas库的drop_duplicates(subset=None, keep=‘first’, inplace=False)功能来对Excel文件中的重复项进行删除。
其中,subset参数代表指定列标记,默认当每一条行记录完全相同时,才会认定为重复行;keep=‘’有‘first’、‘last’和‘False’,意思是删除重复行时,保留first还是last还是全部删除,默认参数是‘first’;inplace=‘’有True和Flase,意思是直接替换还是保留副本,默认值是Flase。
01
读取Excel
import pandas as pd
df = pd.read_excel('全部.xlsx')
02
选中列去重
df.drop_duplicates(['用户名称'])
其中第2、3行的用户名称与第0、1行重复,所以被删除。
03
保存最后一个重复数据
df.drop_duplicates(['用户名称'],keep='last')
因为我们设定保存最后一个重复数据,所以删除了第0、1行数据。
04
保存Excel
df.to_excel('去重后.xlsx')
02
批量获取Excel文件
在上面我们已经学会如何对单个Excel文件去重了,但是在读取文件名的时候,我们还是需要手动输入的,如果文件很多的话,我们要一个一个的输入,这不仅麻烦,而且也不符合自动化办公的名头。所以,我们就需要想办法取得该目录下的所有Excel文件。
这里我们用的是Pathlib库,取得该目录下所有的xlsx格式文件。
path = 'K:\自动化办公'
将该目录下所有文件存储到files列表中,代码如下:
files = []
p = Path(src_path)
for x in p.iterdir():
if PurePath(x).match('*.xlsx'):
files.append(x)
03
小结
批量对Excel文件去重的思路是:
1. 获取该目录下所有的Excel文件,并存入一个列表中。
2. 依次循环列表中文件,进行去重。
3. 每去重完一个文件,进行一次保存。
4. 本文仅供学习参考,不做它用。
最后新年来了,说一下我们的新动作
我们理财交流小分队成立了,新的一年来啦,一起提高自己的理财技能,互相切磋抱团取暖,交流信息。去年没有抓住新能源这个大腿,错过一大波的红利,可见信息差有多重要,如何把握热点,如何提高整体的理财策略,如何降低分险,仓位如何控制,都需要好好研究。今年赶紧成了一个小分队,一起共商大计。
推荐阅读:
入门: 最全的零基础学Python的问题 | 零基础学了8个月的Python | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 | 从万众期待到口碑扑街!唐探3令人失望 | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏 | 九宫格 | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!| 再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|
年度爆款文案
点阅读原文,看200个Python案例!