Pandas groupby без поворота сгруппированных по столбцу в индекс

Поведение pandas groupby по умолчанию - это преобразовать группу по столбцам в индекс и удалить их из списка столбцов фрейма данных. Например, скажем, у меня есть dataFrame с этими столбцами

col1|col2|col3|col4

если я применил группу с столбцами col2 и col3 таким образом

df.groupby(['col2','col3']).sum()

В кадре данных df больше нет ['col2','col3'] в списке столбцов. Они автоматически превращаются в индексы результирующего фрейма.

Мой вопрос заключается в том, как я могу выполнить groupby в столбце и все же сохранить этот столбец в dataframe?

Ответы

Ответ 1

df.groupby(['col2','col3'], as_index=False).sum()

Ответ 2

Другой способ сделать это будет:

df.groupby(['col2', 'col3']).sum().reset_index()

Ответ 3

Не уверен, но я думаю, что правильный ответ будет

df.groupby(['col2','col3']).sum()
df = df.reset_index()

По крайней мере, это то, что я делаю все время, чтобы избежать фреймов данных с мультииндексом.