Groupby выдает ошибку ключа

#python #pandas #dataframe

#python #панды #фрейм данных

Вопрос:

У меня есть фрейм данных, df , определенный как:

 Empty DataFrame
Columns: []
Index: [timestamp, device_type, os]
 

Я пытаюсь сгруппировать по метке времени и типу устройства и preform .agg на нем, например:

 df.groupby(['timestamp', 'device_type']).agg({'sessions_sum': 'sum'})
 

Это дает мне ошибку ключа:

 ** KeyError: KeyError('timestamp',)
 

Я прочитал документацию pandas, но я не уверен, где я ошибаюсь. Как я могу успешно использовать groupby?

Комментарии:

1. можете ли вы добавить сюда изображение скриншота данных?

2. Попробуйте groupby(уровень = 0).agg… Вы группируете по уровню индекса вместо имени.

3. из вашего определения фрейма данных в нем нет столбцов, поэтому он выдает ошибку,

Ответ №1:

Ошибка заключается в том, timestamp, device_type, os что они относятся index к df, а не к фактическим столбцам.

Итак, вы можете либо выполнить:

 df.reset_index(inplace=True)
df.groupby(['timestamp', 'device_type']).agg({'sessions_sum': 'sum'})
 

или:

 df.groupby(level=0).agg