标签:Python,pandas库,openpyxl库
本文展示如何使用Python将Excel文件拆分为多个文件。拆分Excel文件是一项常见的任务,手工操作非常简单。然而,如果文件包含大量数据和许多类别,则此任务将变得重复且繁琐,这意味着我们需要一个自动化解决方案。
库
首先,需要安装两个库:pandas和openpyxl。在命令提示行中使用pip命令来安装:
pip install pandas openpyxl
pandas库用于处理数据(本文中是筛选),openpyxl库用于创建新的Excel文件。
示例文件
你可以到知识星球App完美Excel社群下载示例文件,或者自己简单地创建一个。
将示例文件直接读入pandas数据框架:
图1
该数据集一些家电或电子产品的销售信息:产品名称、产地、销售量。我们的任务是根据“产品名称”列将数据拆分为不同的文件。
基本机制很简单:
1.首先,将数据读入Python/pandas。
2.其次,应用筛选器将数据分组到不同类别。
3.最后,将数据组保存到不同的Excel文件中。
筛选数据
在pandas数据框架中筛选数据很容易。有几种方法,但我们将使用最简单的一种。
假设我们想通过选择所有空调销售来筛选数据,如下所示。
图2
查找分类
接下来,我们需要从数据中提取类别,它们基本上是产品名称列中的值。可以简单地返回该列中的所有唯一值。
图3
拆分Excel工作表为多个工作表
如上所示,产品名称列中的唯一值位于一个数组内,这意味着我们可以循环它来检索每个值,例如“空调”、“冰箱”等。然后,可以使用这些值作为筛选条件来拆分数据集。最后,可以将每个数据集保存到同一Excel文件中的单独工作表中。
图4
图5
使用Python拆分Excel工作簿为多个Excel工作簿
如果需要将数据拆分为不同的Excel文件(而不是工作表),可以稍微修改上面的代码,只需将每个类别的数据输出到自己的文件中。
图6
图7
注:本文学习整理自pythoninoffice.com,稍作修改,供有兴趣的朋友学习参考。