[英]Given time column, how can I create time bins in R?
给定一个具有3列的数据框:
date time respond
1/1/2018 15:40 1
4/5/2017 08:25 0
3/4/2016 09:00 1
5/4/2017 09:25 1
....
我想将我的时间列分成24个容器-例如,对于我们的每个容器,如果我有50个样本,我希望在hour1到hour2(08:00-09:00)之间的所有时间代表08:00小时的容器,等等。
现在,当我实现此目标时,我想计算每个箱中有多少响应者:
bin08:00 = 10位响应者bin09:00 = 134位响应者
并使用ggplot2对其进行绘制。
另外,请指导我如何创建不同的箱图:从08:00到12:00 AM-每小时箱。 每15分钟12:00 AM-15:00垃圾桶等
请指导我该怎么做。
@akrun
一种方法是使用strptime
将您的time
列格式化为POSIX对象,然后对这些对象使用format
向下舍入到小时,如下所示:
library(dplyr)
df$hour <- format(strptime(df$time, "%H:%M"), "%H:00")
df %>% group_by(hour) %>% summarize(respond = sum(respond))
# # A tibble: 3 x 2
# hour respond
# <chr> <int>
# 1 08:00 0
# 2 09:00 2
# 3 15:00 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.