Python实战项目:Excel拆分与合并

简介: Python实战项目:Excel拆分与合并

在实际工作中,我们经常会遇到各种表格的拆分与合并的情况。如果只是少量表,手动操作还算可行,但是如果是几十上百张表,最好使用Python编程进行自动化处理。下面介绍两种拆分案例场景,如何用Pandas实现Excel文件的拆分。

按条件将Excel文件拆分到不同的工作簿
假设现在有一个汇总表,内部存储了整个年级的成绩数据。现在需要按照班级分类,将不同班级的数据拆分到不同的工作簿中,最终实现"三年级总成绩单.xlsx"分成”三年一班.xlsx,三年二班.xlsx,三年三班.xlsx“三个不同班级的工作簿。导入pandas模块,调用read_excel()方法,用于读取“三年级总成绩单”工作簿中的数据。接着,利用for循环,按照“班级”筛选出不同的数据,并将它们写入不同的Excel文件中。源码如下:

import pandas as pd
import os

# 在当前目录下新建一个“班级”文件夹,然后拆分新文件到这个文件夹下
if not os.path.exists('班级'):
    os.mkdir('班级')

df = pd.read_excel('../三年级总成绩.xlsx')
# df['班级'].unique()获取到是不同班级的名称,df['班级']==i]用于筛选出不同班级中的数据。
for class_name in df['班级'].unique():
    df[df['班级'] == class_name].to_excel(f"{os.path.join(os.getcwd(),'班级')}/{class_name}.xlsx", index=False)

执行上述代码后,结果如下图:

image.png

按条件将Excel文件拆分到不同的工作表
假设现在有一个汇总表,内部存储了整个年级的成绩数据。现在需要按照班级分类,将不同班级的数据拆分到一个工作簿的不同工作表中,并保留原来的汇总数据工作表。如下图:

image.png

调用ExcelWriter()方法,它会帮助我们创建一个空的容器对象writer。基于这个对象,我们可以向同一个Excel文件的不同工作表中,写入对应的表格数据。源码如下:

import pandas as pd
import os

df = pd.read_excel('../三年级总成绩.xlsx')

writer = pd.ExcelWriter('三年级总成绩单.xlsx')
df.to_excel(writer, sheet_name='总成绩', index=False)

for j in df['班级'].unique():
    df[df['班级'] == j].to_excel(writer, sheet_name=j, index=False)

writer.save()

第一次调用to_excel()方法时,我们将原来的“汇总数据工作表”写入这个容器对象,并指明了工作表名“总成绩”。接着利用for循环遍历总表,再次调用to_excel()方法,并将拆分后的每个班级的数据,分别写入同一个容器对象。此时,这个容器对象不仅保存了原来的“汇总数据工作表”,还保存了拆分后的每个班级的数据。最后调用容器对象的save()方法,即可将拆分后的数据写入Excel文件中,最终效果如上图所示。

喜欢的朋友可以自己体验一下,欢迎转发分享。下期还有合并数据的案例与大家分享。

相关文章
|
3天前
|
Python
Python 自动化操作 Excel - 02 - xlwt
Python 自动化操作 Excel - 02 - xlwt
28 14
|
3天前
|
Python
Python 自动化操作 Excel - 03 - xlutils
Python 自动化操作 Excel - 03 - xlutils
19 13
|
3天前
|
Python
Python 自动化操作 Excel - 01 - xlrd
Python 自动化操作 Excel - 01 - xlrd
19 9
|
2天前
|
IDE 开发工具 数据安全/隐私保护
Python编程--实现用户注册信息写入excel文件
Python编程--实现用户注册信息写入excel文件
|
1天前
|
存储 Python
Python实战项目Excel拆分与合并——合并篇
Python实战项目Excel拆分与合并——合并篇
|
2天前
|
自然语言处理 搜索推荐 程序员
【Python】如何使用pip,安装第三方库和生成二维码、操作Excel
【Python】如何使用pip,安装第三方库和生成二维码、操作Excel
14 0
|
2月前
|
关系型数据库 MySQL Shell
不通过navicat工具怎么把查询数据导出到excel表中
不通过navicat工具怎么把查询数据导出到excel表中
35 0
|
1月前
|
数据采集 存储 数据挖掘
使用Python读取Excel数据
本文介绍了如何使用Python的`pandas`库读取和操作Excel文件。首先,需要安装`pandas`和`openpyxl`库。接着,通过`read_excel`函数读取Excel数据,并展示了读取特定工作表、查看数据以及计算平均值等操作。此外,还介绍了选择特定列、筛选数据和数据清洗等常用操作。`pandas`是一个强大且易用的工具,适用于日常数据处理工作。
|
2月前
|
SQL JSON 关系型数据库
n种方式教你用python读写excel等数据文件
n种方式教你用python读写excel等数据文件
|
2月前
|
存储 Java Apache