零值的熊猫石斑鱼

时间:2019-08-07 22:08:04

标签: python pandas

我希望可以按一天中的小时数统计事件的数量。我按照说明here提出了一个计数列表,但也想包括零事件的小时数

以下是一些示例数据:

0   2017-10-06 13:21:37 foo
1   2017-10-06 13:21:39 foo
2   2017-10-06 13:21:42 foo

这是我的代码:

counts = df.groupby([pd.Grouper(key='LocalDateTime',freq='H'),df.foo]).size().reset_index(name='count')

我的输出如下:

0   2017-10-06 12:00:00 foo 2
1   2017-10-06 14:00:00 foo 2

我希望它看起来像这样

0   2017-10-06 12:00:00 foo 2
1   2017-10-06 13:00:00 foo 0
2   2017-10-06 14:00:00 foo 2

我检查了Grouper文档,但没有看到有关如何填写缺勤时间的任何信息。最好的方法是什么?

谢谢您的帮助!

1 个答案:

答案 0 :(得分:0)

如果您确实需要缺少的时间戳,这是使用resample但应用Apply的一种方法

df.groupby('foo').\
     apply(lambda x : x.set_index('LocalDateTime').resample('H').count())['foo'].\
       reset_index(name='count')