r-计算小时区间的平均值



我正在尝试计算平均等待时间。一个小时的数据间隔捕获一天中的时间、一周中的哪一天等对等待时间的影响。我的数据帧的头是:

Request            Dispatch        Arrival Source Dest Total.Time Wait.Time Travel.Time   path
1 6/11/2021 0:00 2021-06-11 00:00:00 6/11/2021 0:01     99   63         82         0          82  99_63
2 6/11/2021 0:01 2021-06-11 00:01:00 6/11/2021 0:02     23   13         90         0          90  23_13
3 6/11/2021 0:01 2021-06-11 00:01:00 6/11/2021 0:02     35  911         96         0          96 35_911
4 6/11/2021 0:01 2021-06-11 00:01:00 6/11/2021 0:02     23   81         88        24          64  23_81
5 6/11/2021 0:00 2021-06-11 00:00:00 6/11/2021 0:03     89   35        163         1         162  89_35
6 6/11/2021 0:01 2021-06-11 00:01:00 6/11/2021 0:03     36  309         95         1          94 36_309

使用lubrigate,我通过以下代码行将数据划分为小时桶:

tube$Dispatch <- mdy_hm(tube$Dispatch)
tube_top3 <- data.frame(table(cut(tube$Dispatch,breaks = "hour")))
names(tube_top3)[1] <- "DateTime"
names(tube_top3)[2] <- "Count"

下面是新的数据头。第三天的专栏只是我添加的内容,通过概述午夜水桶,使ggplot变得更好。

DateTime Count day3
1 2021-06-11 00:00:00   302  yes
2 2021-06-11 01:00:00   209   no
3 2021-06-11 02:00:00   189   no
4 2021-06-11 03:00:00   169   no
5 2021-06-11 04:00:00   168   no
6 2021-06-11 05:00:00   234   no

我想计算的是上面原始数据帧的平均等待时间,但对于剪切数据帧中的小时桶。

您可以尝试以下操作-

library(dplyr)
library(lubridate)
tube_top3 <- tube %>%
mutate(Dispatch = mdy_hm(Dispatch), 
hour_break = cut(Dispatch, 'hour')) %>%
group_by(hour_break) %>%
summarise(Count = n(), 
Avg_wait_time = mean(Wait.Time, na.rm = TRUE))

最新更新