Python pandas实现excel工作表合并功能详解


Posted in Python onAugust 29, 2019
import os,pandas as pd,re
#1.获取文件夹下要合并的文件名
dirpath = '文件夹地址'
#工作表3特殊处理 需要开始下标和结束下标
begin = 231
end = 238
excel_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工作表合并功能详解
合并后得文件,如图:

Python pandas实现excel工作表合并功能详解
Python pandas实现excel工作表合并功能详解

以上就是关于Python_pandas实现excel工作表合并功能的全部实例内容,感谢大家的阅读和对三水点靠木的支持。

Python 相关文章推荐
Python中实现远程调用(RPC、RMI)简单例子
Apr 28 Python
利用Python破解验证码实例详解
Dec 08 Python
python fabric实现远程部署
Jan 05 Python
python 类详解及简单实例
Mar 24 Python
Python实现获取命令行输出结果的方法
Jun 10 Python
Python基于回溯法子集树模板解决取物搭配问题实例
Sep 02 Python
Python wxPython库消息对话框MessageDialog用法示例
Sep 03 Python
详解python多线程之间的同步(一)
Apr 03 Python
python flask框架实现重定向功能示例
Jul 02 Python
Django restframework 框架认证、权限、限流用法示例
Dec 21 Python
python异常处理之try finally不报错的原因
May 18 Python
如何使用scrapy中的ItemLoader提取数据
Sep 30 Python
python openCV获取人脸部分并存储功能
Aug 28 #Python
python lambda表达式在sort函数中的使用详解
Aug 28 #Python
python实现微信小程序用户登录、模板推送
Aug 28 #Python
使用Python脚本zabbix自定义key监控oracle连接状态
Aug 28 #Python
django删除表重建的实现方法
Aug 28 #Python
Python Django 前后端分离 API的方法
Aug 28 #Python
django重新生成数据库中的某张表方法
Aug 28 #Python
You might like
全国FM电台频率大全 - 26 西藏自治区
2020/03/11 无线电
frename PHP 灵活文件命名函数 frename
2009/09/09 PHP
pdo中使用参数化查询sql
2011/08/11 PHP
Linux下从零开始安装配置Nginx服务器+PHP开发环境
2015/12/21 PHP
详解WordPress开发中用于获取分类及子页面的函数用法
2016/01/08 PHP
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
2007/02/22 Javascript
js 新浪的一个图片播放图片轮换效果代码
2008/07/15 Javascript
限制文本框输入N个字符的js代码
2010/05/13 Javascript
jQuery LigerUI 使用教程表格篇(1)
2012/01/18 Javascript
在jquery boxy中添加百度地图坐标拾取注意流程
2014/04/03 Javascript
jQuery中fadeOut()方法用法实例
2014/12/24 Javascript
实例详解JavaScript获取链接参数的方法
2016/01/01 Javascript
聊一聊Vue.js过渡效果
2016/09/07 Javascript
解决Vue使用mint-ui loadmore实现上拉加载与下拉刷新出现一个页面使用多个上拉加载后冲突问题
2017/11/07 Javascript
JS实现数组深拷贝的方法分析
2019/03/06 Javascript
JavaScript实现的开关灯泡点击切换特效示例
2019/07/08 Javascript
JavaScript枚举选择jquery插件代码实例
2020/11/17 jQuery
Vue 3自定义指令开发的相关总结
2021/01/29 Vue.js
Python 多核并行计算的示例代码
2017/11/07 Python
Python3的介绍、安装和命令行的认识(推荐)
2018/10/20 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
pandas使用之宽表变窄表的实现
2020/04/12 Python
jupyter notebook中新建cell的方法与快捷键操作
2020/04/22 Python
python如何调用java类
2020/07/05 Python
Python调用飞书发送消息的示例
2020/11/10 Python
如何使用canvas绘制可移动网格的示例代码
2020/12/14 HTML / CSS
英国马莎百货官网:Marks & Spencer
2016/07/29 全球购物
骆驼官方商城:CAMEL
2016/11/22 全球购物
类如何去实现接口
2013/12/19 面试题
什么叫做SQL注入,如何防止
2016/10/04 面试题
考试作弊检讨
2015/01/27 职场文书
卫生院义诊活动总结
2015/05/07 职场文书
针对吵架老公保证书
2015/05/08 职场文书
工商行政处罚决定书
2015/06/24 职场文书
Python Django 后台管理之后台模型属性详解
2021/04/25 Python
使用 Apache Superset 可视化 ClickHouse 数据的两种方法
2021/07/07 Servers