我有以下df
groupby
结果,
df_group = df.groupby(['code', 'year_month']).count()
days_outstanding
code year_month
1 2016-10 4
2016-12 1
2017-01 1
当我尝试时,
df_days = df.groupby(['code', 'year_month'])['days_outstanding'].mean().reset_index(name='avg_days_outanding')
获取列days_outstanding
的每个组的平均天数,但我收到以下错误,
pandas.core.base.DataError: No numeric types to aggregate
我想知道如何修复它。
更新
print(df['days_outstanding'].head().apply(type))
436 <class 'pandas._libs.tslib.Timedelta'>
437 <class 'pandas._libs.tslib.Timedelta'>
839 <class 'pandas._libs.tslib.Timedelta'>
2447 <class 'pandas._libs.tslib.Timedelta'>
3844 <class 'pandas._libs.tslib.Timedelta'>
df
就像,
code year_month days_outstanding
436 1 2016-10 0
437 1 2016-10 0
839 1 2016-10 0
2447 1 2016-10 0
3844 1 2016-12 0
9157 1 2017-01 0