将pandas.core.groupby.SeriesGroupBy转换为DataFram

2024-05-13 06:52:21 发布

您现在位置:Python中文网/ 问答频道 /正文

这个question没有一个令人满意的答案,所以我再问一次。

假设我有以下Pandas数据框:

df1 = pd.DataFrame({'group': ['a', 'a', 'b', 'b'], 'values': [1, 1, 2, 2]})

我按第一列“组”分组:

g1 = df1.groupby('group')

我现在创建了一个“数据框架GroupBy”。然后从GroupBy对象中提取第一列:

g1_1st_column = g1['group']

g1_第1_列的类型是“pandas.core.groupby.系列groupby”。注意,它不再是“数据帧GroupBy”。

我的问题是,如何将SeriesGroupBy对象转换回DataFrame对象?我尝试使用.to_frame()方法,得到以下错误:

g1_1st_column = g1['group'].to_frame()

AttributeError:无法访问“SeriesGroupBy”对象的“u frame”的可调用属性,请尝试使用“apply”方法。

如何使用apply方法或其他方法转换为数据帧?


Tags: to数据对象方法dataframegroupcolumnframe