使用特定的时间或小时过滤Pandas数据框。

3

我有一个非常庞大的数据集:https://archive.ics.uci.edu/ml/datasets/individual+household+electric+power+consumption

它包含约250万行。Pandas数据帧索引是一个时间戳,然后有几列。

我想过滤数据集,只看到例如所有年份的早上9点(09:00:00)行(约1400行->365*4)

Pandas数据帧如下所示

我尝试了这个:

dataset.groupby(dataset.index.hour == '09:00:00')

但是它不起作用。我也尝试了没有成功的方法:

dataset['09:00:00']

谢谢


嗨@marc,当你说(“但它不起作用”)时,你确切地得到了什么?一个空数据框?你想要的一些结果,但不是全部?比你预期的更多的结果?混合的结果? - LeoRochael
嗨,LeoRochael,我收到了一个错误消息。 Peter已经解决了这个问题。 错误是使用 ==09:00:00 而不是使用 == 9。感谢你的帮助。 - Marc
1个回答

3
您的两次尝试都接近了!可以使用布尔掩码选择所需行,如下所示:
dataset[dataset.index.hour == 9]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接