Python 如何保存多个 Excel 文件

在数据处理和分析的工作中,Excel 文件往往是我们不可或缺的一部分。当我们需要保存多个 Excel 文件时,如何高效地完成这一任务就显得尤为重要。本文将介绍如何使用 Python 中的 pandasopenpyxl 库来保存多个 Excel 文件,并附带代码示例。

需求背景

假设我们有一个销售数据的列表,其中每个数据集代表一个不同的城市。我们的目标是将每个城市的数据保存为独立的 Excel 文件。

工具准备

在开始之前,请确保已安装以下库:

pip install pandas openpyxl

pandas 用于数据处理,而 openpyxl 则用于处理 Excel 文件的读写。

示例数据

我们首先创建一个简单的模拟数据集。假设我们的城市数据如下:

import pandas as pd

data = {
    'City': ['Beijing', 'Shanghai', 'Guangzhou'],
    'Sales': [1000, 1500, 1300],
    'Profit': [400, 600, 500]
}

df = pd.DataFrame(data)

处理逻辑

为了将每个城市的数据保存为单独的 Excel 文件,我们需要执行以下步骤:

  1. 遍历每个城市。
  2. 根据城市名称创建一个新的数据框。
  3. 将数据框写入到 Excel 文件中。

具体实现

以下是实现上述逻辑的代码示例:

# 创建多个 Excel 文件
for city in df['City']:
    city_data = df[df['City'] == city]
    filename = f"{city}.xlsx"
    
    # 保存到 Excel 文件
    city_data.to_excel(filename, index=False)

保存过程的序列图示例

为了更好地理解整个过程,我们可以用序列图来展示:

sequenceDiagram
    participant A as 用户
    participant B as Python脚本
    participant C as Excel文件

    A->>B: 提供城市数据
    B->>C: 创建 Excel 文件
    B->>C: 写入城市数据
    B->>A: 文件保存成功

代码解析

  1. 数据框创建:我们用 pd.DataFrame 创建了一个包含城市、销售额和利润的初始数据框 df
  2. 循环遍历:通过 for city in df['City'] 逐一遍历城市名。
  3. 数据筛选city_data = df[df['City'] == city] 这一行代码用于提取对应城市的数据。
  4. 保存文件:使用 to_excel 方法将筛选后的数据框保存为 城市名.xlsx 格式的 Excel 文件。

总结

通过上面的示例,我们轻松地将多个城市的销售数据保存为独立的 Excel 文件。使用 Python 的 pandas 库,不仅提高了处理效率,还减少了手动操作的错误。未来的工作中,我们还可以将这一方法拓展至更复杂的数据集,例如从数据库提取数据,并按条件保存为 Excel 文件。

这种方法具有广泛的适用性,适合于各种数据分析的场景。如果有更多的城市或数据点,只需更改数据框的内容,其他代码便不需要做任何修改。希望本文能够帮助到你,让你在数据处理的路上更加顺利!