Pandas 按列将 CSV 拆分为多个 CSV(或 DataFrame)

作者:编程家 分类: pandas 时间:2025-06-21

在数据分析和处理中,Pandas 是一个非常强大且常用的 Python 库。它提供了丰富的功能,可以帮助我们轻松地处理和分析数据。在实际应用中,我们常常会遇到需要将一个大型的 CSV 文件按照某一列的值进行拆分的情况。本文将介绍如何使用 Pandas 将 CSV 文件按列拆分为多个 CSV 文件或 DataFrame,并提供相应的案例代码。

示例代码:

首先,我们需要导入 Pandas 库,并读取待处理的 CSV 文件。假设我们有一个名为 data.csv 的文件,其中包含了学生的信息,包括姓名、年龄、性别和成绩等字段。

python

import pandas as pd

# 读取 CSV 文件

data = pd.read_csv('data.csv')

接下来,我们需要确定按照哪一列的值进行拆分。假设我们希望按照性别将数据拆分成多个 CSV 文件。我们可以使用 Pandas 的 groupby() 函数来实现这个目标。

python

# 按照性别进行分组

grouped = data.groupby('性别')

现在,我们已经将数据按照性别分组了。接下来,我们可以使用 for 循环来遍历每个分组,并将其保存为一个独立的 CSV 文件。

python

# 遍历每个分组

for name, group in grouped:

# 生成文件名

filename = f'{name}.csv'

# 将分组数据保存为 CSV 文件

group.to_csv(filename, index=False)

通过上述代码,我们可以将原始的 data.csv 文件按照性别拆分为两个独立的 CSV 文件,分别命名为“男.csv”和“女.csv”。

拆分结果:

- 男.csv:

姓名,年龄,性别,成绩

张三,18,男,90

李四,20,男,85

王五,19,男,92

- 女.csv:

姓名,年龄,性别,成绩

小红,17,女,95

小芳,18,女,88

在上述示例中,我们成功地使用 Pandas 将 CSV 文件按照性别拆分为多个 CSV 文件。这种方法同样适用于按照其他列的值进行拆分。通过灵活运用 Pandas 的各种功能,我们可以高效地处理和分析大型数据集。