【发布时间】:2013-11-07 02:59:56
【问题描述】:
我正在处理非统一收集的时间戳索引数据,最终将按每分钟、每小时计算统计数据。我想知道按时间段聚合的最佳方法是什么。
我目前计算两个 lambda 函数,然后将两列添加到数据框中,如下所示:
h = lambda i: pd.to_datetime(i.strftime('%Y-%m-%d %H:00:00'))
m = lambda i: pd.to_datetime(i.strftime('%Y-%m-%d %H:%M:00'))
df['hours'] = df.index.map(h)
df['minutes'] = df.index.map(m)
这让我可以像这样轻松地与groupby 聚合:
by_hour = df.groupby('hours')
我确信有更好或更 Pythonic 的方式来做到这一点,但我还没有弄清楚,希望能提供任何帮助。
【问题讨论】: