Python 合并文件夹内多个 Excel 表格
2024.01.17 11:08浏览量:11简介:通过 Python 合并指定文件夹内的多个 Excel 表格,方便处理大量数据。本篇教程将带领你逐步完成这一任务。
千帆应用开发平台“智能体Pro”全新上线 限时免费体验
面向慢思考场景,支持低代码配置的方式创建“智能体Pro”应用
首先,你需要安装 pandas
和 glob
这两个 Python 库。如果还没有安装,请打开终端并运行以下命令进行安装:
pip install pandas glob openpyxl
接下来,我们可以编写一个 Python 脚本来合并文件夹内的多个 Excel 表格。假设你要合并的 Excel 文件都在名为 data
的文件夹中,并且所有 Excel 文件都在该文件夹的根目录下。
import pandas as pd
import glob
# 指定文件夹路径
folder_path = 'data'
# 获取文件夹中所有 Excel 文件的文件名
excel_files = glob.glob(folder_path + '/*.xlsx') # 修改文件扩展名为你实际的 Excel 文件扩展名
# 创建一个空的 DataFrame 来保存所有数据
merged_data = pd.DataFrame()
# 循环读取每个 Excel 文件并合并到 merged_data 中
for excel_file in excel_files:
data = pd.read_excel(excel_file, engine='openpyxl') # 使用 openpyxl 作为引擎读取 Excel 文件
merged_data = pd.concat([merged_data, data]) # 将每个 Excel 文件的数据合并到 merged_data 中
# 将合并后的数据保存到新的 Excel 文件中
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

发表评论
登录后可评论,请前往 登录 或 注册