Pandas 按日期列出的数据帧平均值

Pandas 按日期列出的数据帧平均值,pandas,dataframe,Pandas,Dataframe,我有下面的数据框和日期列表 debt date 2017-11-17 16:00:00 77 2017-11-17 17:00:00 73 2017-11-17 18:00:00 74 2017-11-17 19:00:00 73 2017-11-17 20:00:00 74 2017-11-17 21:00

我有下面的数据框和日期列表

                       debt 
date                               
2017-11-17 16:00:00    77     
2017-11-17 17:00:00    73     
2017-11-17 18:00:00    74     
2017-11-17 19:00:00    73     
2017-11-17 20:00:00    74     
2017-11-17 21:00:00    71     
我试着按日期分组,找出没有时间的平均日期

2017-11-17 74
我试着这么做 df=df.groupby(df['date'].map(lambda x:x.day)) KeyError:“日期”


还有其他方法吗?

如果需要
索引中的
日期
s,请使用:

但更好的是
DatetimeIndex
使用:


只需修改您自己的方法,更改为
index

df.groupby(df.index.map(lambda x: x.day)).mean()
Out[132]: 
           debt
date           
24    73.666667

非常感谢你速度很快,又是你,耶斯雷尔!符合
20k
;)@耶斯雷尔没有你们的帮助,我甚至无法想象,也能从你们身上学到很多东西:-)
df = df.groupby(df.index.floor('d')).mean()
print (df)
                 debt
date                 
2017-11-17  73.666667

print (df.index)
DatetimeIndex(['2017-11-17'], dtype='datetime64[ns]', name='date', freq=None)
df.groupby(df.index.map(lambda x: x.day)).mean()
Out[132]: 
           debt
date           
24    73.666667