#python #pandas #dataframe #group-by #pandas-groupby
Вопрос:
Я пытаюсь сгруппировать по переменной в панд, но, похоже, это не работает. Переменная представляет собой просто список из нескольких заголовков столбцов, и гораздо проще каждый раз записывать переменную для целей анализа, чем перечислять столбцы для каждой группы отдельно.
Пытаюсь повернуть это:
df_grouped = (df.groupby(['Column1','Column2','Column3','Column4'])
[compvars].sum()).reset_index()
В это:
groupbyvars=['Column1','Column2','Column3','Column4']
df_grouped = (df.groupby([groupbyvars])
[compvars].sum()).reset_index()
Комментарии:
1. Вы перечисляете свой список дважды.
df.groupby([groupbyvars])
заменить простоdf.groupby(groupbyvars)
2. Если проблема все еще сохраняется, пожалуйста, приведите воспроизводимый пример.
Ответ №1:
Как groupbyvars
уже есть list
, мы можем заменить :
df_grouped = (df.groupby([groupbyvars])
[compvars].sum()).reset_index()
Автор: :
df_grouped = (df.groupby(groupbyvars)
[compvars].sum()).reset_index()