Pandas: usando groupby para obter média para cada categoria de dados

Eu tenho um quadro de dados que se parece com isso:

>>> df[['data','category']]
Out[47]: 
          data     category
  0       4610            2
 15       4610            2
 22       5307            7
 23       5307            7
 25       5307            7
...        ...          ...

Os dados e a categoria são numéricos, portanto, eu posso fazer isso:

>>> df[['data','category']].mean()
Out[48]: 
data        5894.677985
category      13.805886
dtype: float64

E eu estou tentando obter a média para cada categoria. Parece simples, mas quando faço isso:

>>> df[['data','category']].groupby('category').mean()

ou

>>> df.groupby('category')['data'].mean()

Retorna um erro como este:

DataError: No numeric types to aggregate

Não há erro se eu substituir as duas funções acima por.count().

O que eu faço de errado? Qual é a maneira correta de obter a média de cada categoria?

questionAnswers(2)

yourAnswerToTheQuestion