Ho un problema con qualche codice groupy di cui sono abbastanza sicuro una volta eseguito (su una versione di panda precedente). Su 0.9, ottengo Nessun tipo numerico per aggregare gli errori. Qualche idea?Nessun tipo numerico da aggregare: modifica del comportamento groupby()?
In [31]: data
Out[31]:
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 2557 entries, 2004-01-01 00:00:00 to 2010-12-31 00:00:00
Freq: <1 DateOffset>
Columns: 360 entries, -89.75 to 89.75
dtypes: object(360)
In [32]: latedges = linspace(-90., 90., 73)
In [33]: lats_new = linspace(-87.5, 87.5, 72)
In [34]: def _get_gridbox_label(x, bins, labels):
....: return labels[searchsorted(bins, x) - 1]
....:
In [35]: lat_bucket = lambda x: _get_gridbox_label(x, latedges, lats_new)
In [36]: data.T.groupby(lat_bucket).mean()
---------------------------------------------------------------------------
DataError Traceback (most recent call last)
<ipython-input-36-ed9c538ac526> in <module>()
----> 1 data.T.groupby(lat_bucket).mean()
/usr/lib/python2.7/site-packages/pandas/core/groupby.py in mean(self)
295 """
296 try:
--> 297 return self._cython_agg_general('mean')
298 except DataError:
299 raise
/usr/lib/python2.7/site-packages/pandas/core/groupby.py in _cython_agg_general(self, how, numeric_only)
1415
1416 def _cython_agg_general(self, how, numeric_only=True):
-> 1417 new_blocks = self._cython_agg_blocks(how, numeric_only=numeric_only)
1418 return self._wrap_agged_blocks(new_blocks)
1419
/usr/lib/python2.7/site-packages/pandas/core/groupby.py in _cython_agg_blocks(self, how, numeric_only)
1455
1456 if len(new_blocks) == 0:
-> 1457 raise DataError('No numeric types to aggregate')
1458
1459 return new_blocks
DataError: No numeric types to aggregate
Grazie! Immagino di iniziare davvero * attentamente * a leggere le note di rilascio su ogni versione ...;) –