Python 合并文件夹内多个 Excel 表格

作者:梅琳marlin2024.01.17 11:08浏览量:11

简介:通过 Python 合并指定文件夹内的多个 Excel 表格,方便处理大量数据。本篇教程将带领你逐步完成这一任务。

千帆应用开发平台“智能体Pro”全新上线 限时免费体验

面向慢思考场景,支持低代码配置的方式创建“智能体Pro”应用

立即体验

首先,你需要安装 pandasglob 这两个 Python 库。如果还没有安装,请打开终端并运行以下命令进行安装:

  1. pip install pandas glob openpyxl

接下来,我们可以编写一个 Python 脚本来合并文件夹内的多个 Excel 表格。假设你要合并的 Excel 文件都在名为 data 的文件夹中,并且所有 Excel 文件都在该文件夹的根目录下。

  1. import pandas as pd
  2. import glob
  3. # 指定文件夹路径
  4. folder_path = 'data'
  5. # 获取文件夹中所有 Excel 文件的文件名
  6. excel_files = glob.glob(folder_path + '/*.xlsx') # 修改文件扩展名为你实际的 Excel 文件扩展名
  7. # 创建一个空的 DataFrame 来保存所有数据
  8. merged_data = pd.DataFrame()
  9. # 循环读取每个 Excel 文件并合并到 merged_data 中
  10. for excel_file in excel_files:
  11. data = pd.read_excel(excel_file, engine='openpyxl') # 使用 openpyxl 作为引擎读取 Excel 文件
  12. merged_data = pd.concat([merged_data, data]) # 将每个 Excel 文件的数据合并到 merged_data 中
  13. # 将合并后的数据保存到新的 Excel 文件中
  14. merged_data.to_excel('merged_data.xlsx', index=False, engine='openpyxl') # 将合并后的数据保存为新的 Excel 文件,并指定使用 openpyxl 作为引擎

这段代码会读取指定文件夹内的所有 Excel 文件,并将它们合并到一个新的 Excel 文件中。注意,如果某些 Excel 文件的列不完全相同,可能会导致错误。在这种情况下,你可能需要先对数据进行预处理,确保所有 Excel 文件的列都是一致的。
此外,这段代码假设所有 Excel 文件都在指定文件夹的根目录下。如果 Excel 文件位于子文件夹中,你需要修改 glob.glob() 中的路径来包含子文件夹。例如,如果你的 Excel 文件位于名为 subfolder 的子文件夹中,你可以将 folder_path 设置为 'data/subfolder'
最后,请注意,这段代码使用了 openpyxl 作为引擎来读取和写入 Excel 文件。如果你的环境中没有安装 openpyxl,你需要先安装它才能运行这段代码。你可以使用以下命令进行安装:
```shell
pip install openpyxl

article bottom image

相关文章推荐

发表评论