【发布时间】:2020-07-10 18:22:17
【问题描述】:
要为我的数据找到合适的聚合级别,我必须将一天分成不同大小的帧。
示例数据:
da = data.frame(timestamp = c("2016-01-24 01:17:37 GMT" ,"2016-01-24 02:09:41 GMT", "2016-01-24 13:34:35 GMT", "2016-01-24 15:17:56 GMT", "2016-01-24 18:14:55 GMT"))
da
timestamp
1 2016-01-24 01:17:37 GMT
2 2016-01-24 02:09:41 GMT
3 2016-01-24 13:34:35 GMT
4 2016-01-24 15:17:56 GMT
5 2016-01-24 18:14:55 GMT
例如,我可以将一天分成 24 个部分。然后 0:00 到 1:00 是第 1 部分,1:00 到 2:00 是第 2 部分等等。
da2 = data.frame(timestamp = c("2016-01-24 01:17:37 GMT" ,"2016-01-24 02:09:41 GMT", "2016-01-24 13:34:35 GMT", "2016-01-24 15:17:56 GMT", "2016-01-24 18:14:55 GMT"),
daypart = c(2, 3, 14, 16, 19))
da2
timestamp daypart
1 2016-01-24 01:17:37 GMT 2
2 2016-01-24 02:09:41 GMT 3
3 2016-01-24 13:34:35 GMT 14
4 2016-01-24 15:17:56 GMT 16
5 2016-01-24 18:14:55 GMT 19
或分成 48 个部分。然后 0:00 到 0:30 是第 1 部分,0:30 到 1:00 是第 2 部分等:
da48 = data.frame(timestamp = c("2016-01-24 01:17:37 GMT" ,"2016-01-24 02:09:41 GMT", "2016-01-24 13:34:35 GMT", "2016-01-24 15:17:56 GMT", "2016-01-24 18:14:55 GMT"),
+ daypart = c(3, 5, 28, 31, 37))
da48
timestamp daypart
1 2016-01-24 01:17:37 GMT 3
2 2016-01-24 02:09:41 GMT 5
3 2016-01-24 13:34:35 GMT 28
4 2016-01-24 15:17:56 GMT 31
5 2016-01-24 18:14:55 GMT 37
我发现这篇帖子 Pos on how to convert time to categorical variable 已经有所帮助,但是我如何才能以这样的方式编写代码,只需要更改我想要减少一天的部分数量?
【问题讨论】:
标签: r time dplyr timestamp transform