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抓取最新博客内容并生成Rss
May 17 Python
Python中super的用法实例
May 28 Python
Python读取键盘输入的2种方法
Jun 16 Python
Python的Django REST框架中的序列化及请求和返回
Apr 11 Python
Python爬虫工程师面试问题总结
Mar 22 Python
selenium+python 去除启动的黑色cmd窗口方法
May 22 Python
情人节快乐! python绘制漂亮玫瑰
Aug 18 Python
使用python判断jpeg图片的完整性实例
Jun 10 Python
Python基于BeautifulSoup和requests实现的爬虫功能示例
Aug 02 Python
python实现企业微信定时发送文本消息的示例代码
Nov 24 Python
python办公自动化之excel的操作
May 23 Python
Python面向对象编程之类的概念
Nov 01 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
用PHP连接Oracle for NT 远程数据库
2006/10/09 PHP
PHP MemCached 高级缓存应用代码
2010/08/05 PHP
PHP线程的内存回收问题
2016/07/08 PHP
对laravel in 查询的使用方法详解
2019/10/09 PHP
JS的IE和Firefox兼容性集锦
2006/12/11 Javascript
基于jquery点击自以外任意处,关闭自身的代码
2012/02/10 Javascript
Flexigrid在IE下不显示数据的处理的解决方法
2013/10/24 Javascript
详解JavaScript的Date对象(制作简易钟表)
2020/04/07 Javascript
JS中call/apply、arguments、undefined/null方法详解
2016/02/15 Javascript
关于JS中match() 和 exec() 返回值和属性的测试
2016/03/21 Javascript
jquery控制页面的展开和隐藏实现方法(推荐)
2016/10/15 Javascript
javascript 数组去重复(在线去重工具)
2016/12/17 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
原生nodejs使用websocket代码分享
2018/04/07 NodeJs
如何解决日期函数new Date()浏览器兼容性问题
2019/09/11 Javascript
vue使用swiper.js重叠轮播组建样式
2019/11/14 Javascript
React中获取数据的3种方法及优缺点
2020/02/18 Javascript
Electron实现应用打包、自动升级过程解析
2020/07/07 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
2020/12/04 Javascript
[00:59]PWL开团时刻DAY7——我在赶
2020/11/06 DOTA
Python实现快速多线程ping的方法
2015/07/15 Python
python中利用xml.dom模块解析xml的方法教程
2017/05/24 Python
Windows下安装Scrapy
2018/10/17 Python
python中嵌套函数的实操步骤
2019/02/27 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
python在不同条件下的输入与输出
2020/02/13 Python
python 5个实用的技巧
2020/09/27 Python
留学自荐信
2013/10/10 职场文书
剪枝的学问教学反思
2014/02/07 职场文书
《蒲公英》教学反思
2014/02/28 职场文书
家长对孩子的感言
2014/03/10 职场文书
酒店管理求职信范文
2014/04/06 职场文书
工商行政管理专业求职书
2014/05/23 职场文书
2016年大学自主招生自荐信范文
2015/03/24 职场文书
未中标通知书
2015/04/17 职场文书
SQL基础查询和LINQ集成化查询
2022/01/18 MySQL