首页 > 解决方案 > 'DataFrameGroupBy' 对象的 pandas 'to_csv' 问题)

问题描述

我想将 Pandas groupby 数据框输出到 CSV。尝试了各种 StackOverflow 解决方案,但没有奏效。

蟒蛇 3.7

这是我的数据框

这是我的代码

groups = clustering_df.groupby(clustering_df['Family Number'])
groups.apply(lambda clustering_df: clustering_df.sort_values(by=['Family Number']))
groups.to_csv('grouped.csv')

错误信息

(AttributeError:无法访问“DataFrameGroupBy”对象的可调用属性“to_csv”,请尝试使用“应用”方法)

标签: pythonpandasexport-to-csv

解决方案


你只需要这样做:

groups = clustering_df.groupby(clustering_df['Family Number'])
groups = groups.apply(lambda clustering_df: clustering_df.sort_values(by=['Family Number']))
groups.to_csv('grouped.csv')

您所做的是,没有保存 groupby-apply 变量。它会被应用并可能会根据您使用的 IDE/Notebook 抛出输出。但是要将其保存到文件中,您必须在 groupby 对象上应用该函数,将其保存到变量中,然后才能保存文件。

链接也有效:

groups = clustering_df.groupby(clustering_df['Family Number']).apply(lambda clustering_df: clustering_df.sort_values(by=['Family Number']))
groups.to_csv("grouped.csv")

推荐阅读