Python pandas实现excel工作表合并功能详解
Python  /  管理员 发布于 7年前   360
import os,pandas as pd,re#1.获取文件夹下要合并的文件名dirpath = '文件夹地址'#工作表3特殊处理 需要开始下标和结束下标begin = 231end = 238excel_names = os.listdir(dirpath)#2.获取文件内容sheet_1_merge = []sheet_2_merge = []sheet_3_merge = pd.DataFrame([0,0,0,0,0,0,0])for excel_name in excel_names:#绝对路径excel_path = dirpath+excel_name#dropna(axis=0, how='all')行全部为空得删除#获取工作表1内容sheet_1=pd.read_excel(excel_path, sheet_name=1, header=None)[2:][range(9)].dropna(axis=0, how='all')sheet_1_merge.append(sheet_1)
获取工作表2内容
sheet_2=pd.read_excel(excel_path, sheet_name=2, header=None)[2:][range(1,7)].dropna(axis=0, how='all')sheet_2_merge.append(sheet_2)# 获取工作表3内容sheet_3 = list(pd.read_excel(excel_path,sheet_name=3,header=None)[begin:end][1])excel_name = re.findall('\d-(.*).xlsx', excel_name)[0]sheet_3_merge.insert(1,excel_name,sheet_3)print(sheet_1,'\n',sheet_2,'\n',sheet_3)
#保存合并内容#axis=0,ignore_index=True合并行 忽略原来的下标sheet_1_merge = pd.DataFrame(pd.concat(sheet_1_merge,axis=0,ignore_index=True))sheet_2_merge = pd.DataFrame(pd.concat(sheet_2_merge,axis=0,ignore_index=True))#columns主要是为了按照已有得排序,方便整理sheet_3_merge = pd.DataFrame(sheet_3_merge,columns=['李1','李2,'李3','彭4','杨5','夏6',...,'杜34','叶35'])writer = pd.ExcelWriter('C:/Users/zhuozhe/Desktop/merge.xlsx')sheet_1_merge.to_excel(excel_writer=writer,sheet_name='merge_1')sheet_2_merge.to_excel(excel_writer=writer,sheet_name='merge_2')sheet_3_merge.to_excel(excel_writer=writer,sheet_name='merge_3')writer.save()writer.close()
合并文件包含三个工作表:完成任务,下周计划,本周工时(包含了全年的数据,所以需要抽取)。
合并后得文件,如图:
以上就是关于Python_pandas实现excel工作表合并功能的全部实例内容,感谢大家的阅读和的支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号