dataframe两个表合并_史上代码最少的工作表拆分,仅需5行,不可思议
工作中,很多小伙伴都会遇到一些需求,将一份Excel文档按照部门进行拆分,每个部门是一个单独的工作表,或者每个部门整理的工作表汇总为一份总的工作表。读者需要注意的是,多个工作表的拆分与合并,始终在一个工作簿内操作。让我们一起通过Pandas库来实现。
本例目标:根据指定的Excel文件按照部门拆分成多个工作表,其次,根据多个工作表合并成一个工作表。
最终效果:按照部门生成工作表。
技术点:groupby()方法的使用,Excel的追加模式等。
代码编写方式:采用函数、面向过程方式编写。
接下来我们一起进行代码编写,通过2步搞定这个程序。
(1)按照部门进行分组DataFrame。
我们用到了分组这个知识点,直接使用groupby()方法对部门列做分组,分组后的数据包含部门名称和分部门的DataFrame,避免了循环获取数据的办法。
groupby()方法使用如下所示。
#数据按部门划分为DataFrame.
grouped = df.groupby('department')
print(grouped.get_group('技术部'))
for name,group in df.groupby('department'):
print(name,group)
代码执行结果后,name值为人事部、技术部等,group为人事部、技术部对应的DataFrame。请读者自行测试验证。
(2)工作表的拆分。
真正的代码来了,核心代码仅需5行。
通过下段代码演示工作表的拆分,源代码见example_split.py。
import pandas as pd
import os
curpath = os.path.dirname(__file__)
filename = os.path.join(curpath, 'example_merge.xlsx')
savefilename = os.path.join(curpath, 'example_merge_1.xlsx')
//就这5句
df=pd.read_excel(filename)
writer = pd.ExcelWriter(savefilename,engine='openpyxl', mode='a')
for name,group in df.groupby('department'):
group.to_excel(writer,name)
writer.save()
代码执行后生成example_merge_1.xlsx,文件内容如图所示。
dataframe两个表合并_史上代码最少的工作表拆分,仅需5行,不可思议相关推荐
- 2个recordset合并_史上最全!8种办法玩转Excel文字合并,总有一款适合你!
本文作者丨 wayy - Excel 研究院 本文由「秋叶 Excel」原创发布 如需转载,请在公众号发送关键词「转载」查看说明 在日常工作过程中, 我们经常会遇到要把一串文字拼接到一起的情况. 你还 ...
- mysql 前沿表设计_史上最简单MySQL教程详解(基础篇)之表的维护和改造
表结构修改 在我们实际的开发的过程,随着开发的深入,会发现我们事先设计好的表可能已经不再适合,就会设计到对表的修改和改造.这里我就向大家介绍一下一些常用的方法和情况.这里我们使用的是之前在中就已经使用 ...
- 史上最全MySQL 大表优化方案(长文)
转载自 史上最全MySQL 大表优化方案(长文) 当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 一.单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑 ...
- 史上很全的注册表修改大全
史上很全的注册表修改大全 请使用 Ctrl+F 键来查找你想要的 不想别人使用你电脑的某些功能,或是在网吧想使用某些功能,或是让自己的电脑速度更快 怎么办 如果你有点注册表的知识就OK拉 没有多深奥 ...
- excel批量更改超链接_批量新建Excel指定名称工作表并设置超链接!你,学会了吗?...
文 / 雷哥+小鱼儿 编辑 / 小鱼儿 雷哥收到一份来自老板的任务,内容如下,你敢不敢挑战下? 案例:给公司几百名员工分别建档:以每个员工的名字建一个工作表,内含各自的年终奖情况,而且还要方便.快速 ...
- 设顺序表va中的数据元素递增有序。试写一算法,将x插入到顺序表的适当位置上,以保持该表的有序性。
题目要求:设顺序表va中的数据元素递增有序.试写一算法,将x插入到顺序表的适当位置上,以保持该表的有序性. 代码实现: void Insert(SqList *va,int x) {int i;if( ...
- Python办公自动化实践1:从多个excel表中提取数据并汇总到一个工作表页中,表格,抽取,sheet
Python办公自动化实践1:从多个excel表中提取数据并汇总到一个工作表页中,表格,抽取,sheet 发表时间:2020-04-26 问题:从当前目录或子目录中查询符合条件的excel表格,并从这 ...
- 如何使用物联网低代码平台进行工作表管理?
工作表是AIRIOT物联网低代码平台的主要功能之一,主要用来自定义业务表单,实现数据同步及业务联动,可同步本地及网络数据库,实现平台数据及第三方系统数据同步.AIRIOT工作表管理方便,可根据实际情况 ...
- php编写六十甲子纳音表_史上最完整的六十甲子纳音表详细说明
六十甲子是汉族人民最早和最大的发明,其历史已有上千年,其用途是纪年.纪月.纪日.纪时.在古时候,就是我们的时钟,以六十年为一个周期,纪月为五年一个周期,纪日为六十天一个周期,纪时为五天一个周期.接下来 ...
最新文章
- Android -- onMeasure()源码分析
- Vue.js 2.x render 渲染函数 JSX
- Chapter11-RMAN Backups
- cass批量选目标快捷键_大神总结100个CAD快捷键+20个CAD制图技巧,值得收藏!
- Lunar New Year and Food Ordering
- c语言用数组实现栈的插入,用数组实现栈的功能的C语言代码?
- 直方图均衡[附C实现代码]
- 音频社交Clubhouse将支持空间音频,让聊天更具真实感
- 【Java】java中this$0 this$1 this$2
- ucc编译器(中间代码生成)
- 图像局部特征(十六)--SimpleBlobDetector
- a=a++问题引发的思考
- 私有服务器虚拟化软件市场排名,三大服务器虚拟化软件比拼 谁是最佳?
- python 解压zip rar 7z文件
- (转)人工智能公司Kensho是如何改变华尔街的?
- 启动电容与运行电容-电容-嵌入式开发-物联网开发
- 当幻想的小说来到现实——基于stable diffusion的小说插画生成
- 解决Unknown column ‘xxx‘ in ‘where clause‘问题
- linux(centos)内核升级
- 警猫眼Arduino源码分享,把闲置手机变成安防监控摄像头!
热门文章
- 老男孩Linux运维第41期20170924开班第五周学习重点课堂记录
- Kotlin成为正式的Android编程语言
- 简单几何(推公式) UVA 11646 Athletics Track
- android - Animation详解
- 各种Web漏洞测试平台
- Alt + sysrq + REISUB doesn't reboot my laptop
- 网路游侠:某厂家新发布的数据销毁工具
- numpy.linalg.svd
- SmartDoc(YUIDoc) 注释编写
- 解决ExcelReport导出Excel报Number of rules must not exceed 3错误的问题