Панды: используя groupby, чтобы получить среднее значение для каждой категории данных
У меня есть датафрейм, который выглядит так:
>>> df[['data','category']]
Out[47]:
data category
0 4610 2
15 4610 2
22 5307 7
23 5307 7
25 5307 7
... ... ...
И данные, и категории являются числовыми, поэтому я могу сделать это:
>>> df[['data','category']].mean()
Out[48]:
data 5894.677985
category 13.805886
dtype: float64
И я пытаюсь получить среднее значение для каждой категории. Это выглядит прямо вперед, но когда я делаю это:
>>> df[['data','category']].groupby('category').mean()
или же
>>> df.groupby('category')['data'].mean()
Это возвращает ошибку как это:
DataError: No numeric types to aggregate
Там нет ошибки, если я заменю обе функции выше.count()
.
Что я делаю неправильно? Как правильно получить среднее значение для каждой категории?