教你如何把Python CSV 合并到多个sheet工作表

1. 序言

Python 是一种非常流行的编程语言,它具有简单易学、功能强大、生态丰富等优点。在数据处理方面,Python 提供了许多强大的库和工具,使得数据的处理变得更加高效和便捷。CSV(Comma-Separated Values)是一种常见的数据格式,它以逗号作为分隔符,用于存储表格数据。在实际的数据分析过程中,我们经常会遇到需要将多个 CSV 文件合并到一个工作表中的需求。本文将介绍如何使用 Python 将 CSV 文件合并到多个 sheet 工作表中。

2. 准备工作

2.1 安装所需的库

在开始之前,我们需要安装 pandas、xlrd 和 openpyxl 这几个库。你可以使用以下命令安装它们:

pip install pandas xlrd openpyxl

安装完毕后,我们可以开始编写代码了。

3. CSV 文件合并到多个 sheet 工作表

下面我们将分步骤介绍如何使用 Python 将多个 CSV 文件合并到一个 Excel 文件的不同 sheet 工作表中。

3.1 导入所需的库

首先,我们需要导入 pandas 库来处理 CSV 文件,以及 openpyxl 库来处理 Excel 文件。导入的代码如下:

import pandas as pd

from openpyxl import Workbook

3.2 读取 CSV 文件并合并到多个 sheet 工作表中

接下来,我们需要读取多个 CSV 文件,并将它们合并到一个 Excel 文件的不同 sheet 工作表中。代码如下:

# 创建一个新的 Excel 文件

workbook = Workbook()

# 读取多个 CSV 文件并合并到不同的 sheet 工作表中

csv_files = ['file1.csv', 'file2.csv', 'file3.csv']

sheet_names = ['Sheet1', 'Sheet2', 'Sheet3']

for i, csv_file in enumerate(csv_files):

# 读取 CSV 文件

df = pd.read_csv(csv_file)

# 创建一个新的 sheet 工作表

sheet = workbook.active if i == 0 else workbook.create_sheet()

sheet.title = sheet_names[i]

# 将 CSV 数据写入到 sheet 工作表中

for r in dataframe_to_rows(df, index=False, header=True):

sheet.append(r)

# 保存 Excel 文件

workbook.save('merged.xlsx')

在上面的代码中,我们首先创建了一个新的 Excel 文件,然后遍历多个 CSV 文件。对于每个 CSV 文件,我们读取其内容并创建一个新的 sheet 工作表,并将 CSV 数据写入到该工作表中。最后,我们保存 Excel 文件。

使用上述代码,你可以根据实际需求修改 csv_files 和 sheet_names 变量的值,来读取不同的 CSV 文件并将它们合并到不同的 sheet 工作表中。

4. 总结

本文介绍了如何使用 Python 将多个 CSV 文件合并到一个 Excel 文件的不同 sheet 工作表中。通过使用 pandas 和 openpyxl 这两个强大的库,我们可以实现简洁高效的合并操作。希望本文能够对你在实际的数据处理工作中有所帮助。

后端开发标签