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