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 map和reduce函数用法示例
Feb 26 Python
使用python实现rsa算法代码
Feb 17 Python
基于Django contrib Comments 评论模块(详解)
Dec 08 Python
利用python库在局域网内传输文件的方法
Jun 04 Python
详解Python if-elif-else知识点
Jun 11 Python
解决Tensorflow安装成功,但在导入时报错的问题
Jun 13 Python
详解python如何在django中为用户模型添加自定义权限
Oct 15 Python
详解Python给照片换底色(蓝底换红底)
Mar 22 Python
详解Selenium+PhantomJS+python简单实现爬虫的功能
Jul 14 Python
对python中url参数编码与解码的实例详解
Jul 25 Python
Python 使用dict实现switch的操作
Apr 07 Python
Python使用pyecharts控件绘制图表
Jun 05 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数据库(2)
2006/10/09 PHP
php中session使用示例
2014/03/29 PHP
php最简单的删除目录与文件实现方法
2014/11/28 PHP
Codeigniter通过SimpleXML将xml转换成对象的方法
2015/03/19 PHP
PHP数据库操作三:redis用法分析
2017/08/16 PHP
DHTML 中的绝对定位
2006/11/26 Javascript
30个精美的jQuery幻灯片效果插件和教程
2011/08/23 Javascript
JS获取url链接字符串 location.href
2013/12/23 Javascript
javascript移出节点removeChild()使用介绍
2014/04/03 Javascript
使用forever管理nodejs应用教程
2014/06/03 NodeJs
分享一个自己写的简单的javascript分页组件
2015/02/15 Javascript
WordPress中利用AJAX技术进行评论提交的实现示例
2016/01/12 Javascript
BootStrap文件上传样式超好看【持续更新】
2016/05/10 Javascript
jQuery插件passwordStrength密码强度指标详解
2016/06/24 Javascript
JQuery组件基于Bootstrap的DropDownList(完整版)
2016/07/05 Javascript
DWR3 访问WEB元素的两种方法实例详解
2017/01/03 Javascript
在js中做数字字符串补0(js补零)
2017/03/25 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
vue.js实现备忘录功能的方法
2017/07/10 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
2018/11/02 Javascript
node.js连接mysql与基本用法示例
2019/01/05 Javascript
vue:el-input输入时限制输入的类型操作
2020/08/05 Javascript
JavaScript TAB栏切换效果的示例
2020/11/05 Javascript
[08:54]《一刀刀一天》之DOTA全时刻18:十九支奔赴西雅图队伍全部出炉
2014/06/04 DOTA
Win8.1下安装Python3.6提示0x80240017错误的解决方法
2018/07/31 Python
numpy中loadtxt 的用法详解
2018/08/03 Python
如何使用pyinstaller打包32位的exe程序
2019/05/26 Python
python 三种方法提取pdf中的图片
2021/02/07 Python
新西兰最大的品牌运动鞋购物网站:Platypus NZ
2017/10/27 全球购物
李维斯法国官网:Levi’s法国
2019/07/13 全球购物
大二学期个人自我评价
2014/01/13 职场文书
人力资源主管的岗位职责
2014/03/15 职场文书
药剂专业个人求职信范文
2014/04/29 职场文书
人事局接收函
2015/01/31 职场文书
2015年党建工作总结
2015/03/30 职场文书
详解Js模块化的作用原理和方案
2021/04/29 Javascript