Панды: используя 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().

Что я делаю неправильно? Как правильно получить среднее значение для каждой категории?

Ответы на вопрос(2)

Ваш ответ на вопрос