使用Python批量筛选上千个Excel文件中的某一行数据并另存为新Excel文件(上篇)_热闻
回复“书籍”即可获赠Python从入门到进阶共10本电子书
今
日
(资料图片)
鸡
汤
离离原上草,一岁一枯荣。大家好,我是Python进阶者。
一、前言前几天在帮助粉丝解决问题的时候,遇到一个简单的小需求,这里拿出来跟大家一起分享,后面再次遇到的时候,可以从这里得到灵感。
二、需求澄清粉丝的问题来源于实际的需求,她现在想要使用Python批量筛选上千个Excel文件中的某一行数据并另存为新Excel文件,如果是正常操作的话,肯定是挨个点击进去Excel文件,然后CTRL+F找到满足筛选条件的数据,之后复制对应的那一行,然后放到新建的Excel文件中去。
这样做肯定是可以,但是当有上百个文件夹需要复制呢?上千个文件呢?肯定就需要消耗大量的时间和精力了。估计一天都不一定完成的了。
这里使用Python进行批量实现,流程下来,1分钟不到搞定!这里装X了,其实码代码还是需要点时间的,狗头保命!
下面这个代码是初始代码,可以实现的是筛选出来的每一行都另存为新文件,100个文件就存100个文件了。代码如下:
importpandasaspdimportospath=r"./新建文件夹/"#获取文件夹下的所有文件名name_list=os.listdir(path)name_list=(pd.DataFrame(name_list))#for循环遍历读取foriinrange(len(name_list)):df=pd.read_excel(path+name_list[0][i])print("{}读取完成!".format(i))hai=df[df["id"]=="58666"]hai.to_excel("./res/"+name_list[0][i])三、实现过程
这里给大家提供两个可行的代码,思路也很简单,直接遍历文件夹,然后加条件筛选,之后符合条件的,直接使用concat进行合并,代码如下:
importpandasaspdimportospath=r"./新建文件夹/"#获取文件夹下的所有文件名name_list=os.listdir(path)name_list=pd.DataFrame(name_list)#计数器res=[]#for循环遍历读取foriinrange(len(name_list)):#len(name_list)等于21df=pd.read_excel(path+name_list[0][i])print("文件{}读取完成!".format(i))target_data=df[df["id"]=="58666"]#print(target_data)res.append(target_data)final_df=pd.concat(res)final_df.to_excel("target.xlsx")
代码运行之后,就可以把某一文件夹下的所有Excel满足筛选条件的Excel行,存到一个单独的Excel中去。再也不用挨个去手动复制了,使用Python事半功倍!
后来在【猫药师Kelly】的指导下,还写了一个新的代码,也是可以的,思路和上面的差不多,代码如下所示:
importpandasaspdimportospath=r"./新建文件夹/"#获取文件夹下的所有文件名name_list=os.listdir(path)#print(name_list)#name_list=pd.DataFrame(name_list)#file_path=[xxx,xxx,xxx,......]res=pd.read_excel(path+name_list[0])res=res[res["id"]=="58666"]forfileinname_list[1:]:temp=pd.read_excel(path+file)temp=temp[temp["id"]=="58666"]res=pd.concat([res,temp],ignore_index=True)res.to_excel("res.xlsx")
实现的效果如下图所示:
三、总结大家好,我是皮皮。这篇文章主要盘点一个Python自动化办公的实用案例,这个案例可以适用于实际工作中文件处理,大家也可以稍微改进下,用于自己的实际工作中去,举一反三。
大家在学习过程中如果有遇到问题,欢迎随时联系我解决(我的微信:pdcfighting),应粉丝要求,我创建了一些高质量的Python付费学习交流群和付费接单群,欢迎大家加入我的Python学习交流群和接单群!
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
-------------------End-------------------
往期精彩文章推荐:
盘点一个JS逆向过程中中文编解码的小案例
盘点一个Python自动化办公实战案例
盘点一个Pandas操作Excel多条件取值的实战案例
盘点一个Python列表转换为字典并排序的问题
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
/今日留言主题/
随便说一两句吧~~
为您推荐
广告
- 宜人贷网贷逾期25天征信会怎么样
- 招商基金:本分、专注、开放价值观下的凝聚力
- 年夜饭堂食预订火爆 餐饮业回暖连锁龙头将率先恢复_焦点热闻
- 2022南京市江宁区第三批国企招聘报名入口最新
- 装满科学研究素材的SpaceX龙飞船今天将离开国际空间站
- 天天视讯!西安海关创新“智慧监管” 促中欧班列长安号高效通关
- 2023,跟着万家去做个“长期主义者”
- e点贷贷款逾期31年影响征信吗|新要闻
- A股全年涨15% 高盛再次看多中国 靠谱吗?
- 嘉友国际(603871)1月9日主力资金净买入1559.91万元
- 360借条借款逾期八天不还征信有什么影响
- 环球速看:持续投资促进消费 大润发Super新年首店落子江苏宿迁
- 满易贷贷款逾期25年延迟还款征信会怎么样-全球资讯
- 热资讯!盒马鲜生全面盈利,马云的新零售预言成功
- 环球微动态丨兔年春节临近 全国各地年味渐浓、春意充盈
- 当前速读:幼猫一直叫怎么办 幼猫一直喵喵喵叫怎么办
- 第一台中文打字机的诞生
- 今日快讯:【港股通】信利国际(00732)22年累计综合营业净额约为193.65亿港元 同比减少约14.1%
- 一斤半牛肉把饺子用多少面?
- 使用Python批量筛选上千个Excel文件中的某一行数据并另存为新Excel文件(上篇)_热闻
- 1沃尔核材(002130):控股子公司通过增资扩股实施员工股权激励计划暨关联交易 环球要闻
- 2微淼教育:如何有效地利用每一分钱,如何及时地把握每一个投资机会 每日热讯
- 3南京阳性康复患者体检有没有问题可以去哪里体检|当前视点
- 4报道:今冬的“烟管裙”又火了!这一类裙型,凭什么讲究女人最爱穿?
- 568岁李雪健的妻子,竟是大家熟悉的她!近照很有气质
- 6公告速递:景顺长城沪港深红利成长低波指数基金暂停接受伍佰万元以上申购含日常申购和定期定额申购)及转换转入业务
- 7【环球时快讯】新天公司财务管理舱及财务决策分析模型上线试运行
- 8环球看热讯:外星人全球首款24.5寸500Hz IPS电竞显示器公布:响应时间仅0.5ms
- 9北京石景山:对首钢冰雪娱乐场所开展食品安全检查
- 10文博行业十大热点事件出炉 “甘肃绿马爆红”上榜
- 1交通事故保险公司理赔流程具体包括哪些
- 2粤水电(002060.SZ)中标14.25亿元岷江老木孔航电枢纽工程主体工程土建I标
- 3每日热门:《向风而行》剧情介绍原著小说叫什么 向风而行哪个台播放?
- 4打拐英雄“胡叔叔”,一等功!
- 5排队2小时、花100元烤橘子!围炉煮茶,怎么就火了?
- 6中国外汇交易中心调整CFETS人民币汇率指数、SDR货币篮子人民币汇率指数货币篮子权重-天天视讯
- 7金花股份董秘回复:公司目前没有生产与“抗原检测”试剂盒有关的产品-环球短讯
- 8企业具备快速适应市场能力 “出海”抢单团满载而归
- 9环球聚焦:可转债存量规模逾8000亿元 服务实体经济质效持续增强
- 10世界热头条丨长城基金韩林:风格漂移业绩受挫 执掌长城数字经济混合基金能否后来居上?
广告
- 焦点要闻:大叶股份(300879):董事会换届选举
- 做零食批发!你可以这样搞
- 观点:壹网壹创:公司实际控制人减持的原因系其自身资金需求
- 社评:小三通走小步 改善两岸关系不停步
- 世界最新:羊没羊,好像也没那么重要了!
- 质押贷可以延迟还款吗 世界观点
- 步步高12月28日快速反弹
- 加强药品生产调拨 保障群众用药需求
- “肺要咳出来”要拍CT吗?专家回应 咳嗽严重怎么缓解 快播报
- Redmi K60系列原生搭载MIUI 14 系统更流畅 全球今热点
- 天天观察:合肥徽商银行2023兔年纪念币线上预约方式
- 当前热议!深度丨产品收益下滑,银行打出“调基降费”组合拳
- 理工导航(688282)12月26日主力资金净卖出369.14万元 天天通讯
- 环球新动态:精研科技: 第三届监事会第十六次会议决议公告
- 遥望科技终止出售星期六鞋业100%股权
- 本周有一个转折窗口!
- 世界看热讯:威胜信息(688100):变更公司总经理(总裁)
- 24小时内七个瓜:谢晋儿子、樊登父亲病逝,还有五位明星确诊新冠 天天即时
- 沃森生物董秘回复:公司13价肺炎结合疫苗前期已向摩洛哥交付100万剂_环球通讯
- 当前播报:商超店进攻4S店,比亚迪的渠道内战