下面是一个示例代码,演示如何按列将数据框按组分组,并将每个组保存到不同的目录中。
import pandas as pd
import os
# 创建数据框
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve'],
'Group': ['A', 'B', 'A', 'B', 'A'],
'Value': [1, 2, 3, 4, 5]}
df = pd.DataFrame(data)
# 按组分组
groups = df.groupby('Group')
# 创建保存目录
save_dir = 'groups_data'
os.makedirs(save_dir, exist_ok=True)
# 遍历每个组
for group_name, group_data in groups:
# 创建组的保存目录
group_dir = os.path.join(save_dir, group_name)
os.makedirs(group_dir, exist_ok=True)
# 保存组数据到目录中
group_data.to_csv(os.path.join(group_dir, f'{group_name}_data.csv'), index=False)
在这个示例中,我们首先创建了一个简单的数据框,包含Name、Group和Value列。然后,我们使用groupby
函数按Group列进行分组,并将结果保存到groups变量中。
接下来,我们创建一个名为"groups_data"的保存目录,并使用os.makedirs
函数确保目录存在。然后,我们遍历每个组,使用组名创建一个与组相关的目录,并将组数据保存到对应的目录中。最后,我们使用to_csv
函数将组数据保存为以"group_name_data.csv"命名的CSV文件。
在运行代码后,你应该会在"groups_data"目录下看到按组分组后的数据保存在不同的目录中。每个目录的名称对应一个组的名称,其中包含一个以"group_name_data.csv"命名的文件。
上一篇:按列将嵌套列表写入CSV