Pandas 取重采样日期内的每日平均值

Pandas take daily mean within resampled date

我有一个数据框,其中包含整个月内每 20 分钟一次的行程计数,比方说:

        Date                Trip count
0    2019-08-01 00:00:00          3
1    2019-08-01 00:20:00          2
2    2019-08-01 00:40:00          4
3    2019-08-02 00:00:00          6
4    2019-08-02 00:20:00          4
5    2019-08-02 00:40:00          2

我想每 20 分钟计算一次所有行程的每日平均值。所需的输出(对于上述值)如下所示:

    Date        mean
0   00:00:00    4.5
1   00:20:00    3
2   00:40:00    3
..
72  23:40:00    ..

您可以按 Series.dt.time 创建的时间进行汇总,因为总是只有 00, 20, 40 分钟而没有秒:

df['Date'] = pd.to_datetime(df['Date'])

df1 = df.groupby(df['Date'].dt.time).mean()
#alternative
#df1 = df.groupby(df['Date'].dt.strftime('%H:%M:%S')).mean()
print (df1)
          Trip count
Date                
00:00:00         4.5
00:20:00         3.0
00:40:00         3.0