【发布时间】:2018-09-15 02:19:36
【问题描述】:
我的数据框包含超过 125000 行的 YYYY-MM-DD HH-MM-SS 格式的日期值,按分钟细分(每行代表一分钟)。
1 2018-01-01 00:04:00
2 2018-01-01 00:05:00
3 2018-01-01 00:06:00
4 2018-01-01 00:07:00
5 2018-01-01 00:08:00
6 2018-01-01 00:09:00
...
124998 2018-03-29 05:07:00
124999 2018-03-29 05:08:00
125000 2018-03-29 05:09:00
我想通过提取任何给定小时内的所有分钟值并将结果保存到单独的数据帧中来对数据进行子集化。
我已将subset() 与grepl() 结合使用,但无济于事。我尝试设置start = 和stop = 参数,但也无济于事。
我想做的是对于每个HH 值,我想提取具有相应HH 值的所有行,然后为每个相应的HH 值创建一个新数据框。
例如,我想要一个对应于每分钟值(整小时的数据)的数据框,产生如下数据框:
-
2018-01-01 00:00:00(包含从2018-01-01 00:00:00到2018-01-01 00:59:00(含)的数据) -
2018-01-01 01:00:00(包含从2018-01-01 01:00:00到2018-01-01 01:59:00(含)的数据)
等等。
有没有一种快速的方法来实现这一点,还是一项更费力的任务?
注意:我知道我想要的结果会产生很多数据帧,这对我的特定项目来说很好,因为我在任何时候都只会处理一个一小时的块。
【问题讨论】: