例如,当患者到达医院时,会记录到达日期和时间(15/04/2018 6:60:30)。在过去的一年中,有成千上万的患者登记在册,我有兴趣在24小时内获得患者到达总数的分布。
数据框的其中一列包含跨越两个不同年份的日期/时间值(如下表所示)。每个观察结果代表患者的到来。
31/12/2017 20:24
31/12/2017 21:24
31/12/2017 21:34
31/12/2017 22:55
31/12/2017 22:55
31/12/2017 23:18
31/12/2017 23:37
31/12/2017 23:37
31/12/2017 23:49
01/01/2018 0:15
01/01/2018 0:23
01/01/2018 0:56
01/01/2018 1:08
01/01/2018 1:27
01/01/2018 2:44
我想算出在24小时和7天的时间间隔内每30分钟间隔的平均到达时间。
我只是不知道如何完成它。新手在这里!拜托,我需要你的帮助。谢谢
我尝试过
arrivaltime <- dmy_hm(mydata$Time.of.arrival, tz = "US/Eastern")
head(arrivaltime)
MyArrivalDatesTable<-data.frame(table((cut(arrivaltime,breaks = "30 mins"))))
head(MyArrivalDatesTable)
但是我仍然没有得到正确的输出。
预期结果:
7天窗口
Day Time mean arrival
Mon 0:00 1.057534247
Mon 0:30 1.087671233
Mon 1:00 0.882191781
Mon 1:30 0.745205479
Mon 2:00 0.64109589
Mon 2:30 0.589041096
Mon 3:00 0.652054795
Mon 3:30 0.663013699
Mon 4:00 0.616438356
...
24-h window
Time mean arrival
0:00 1.057534247
0:30 1.087671233
1:00 0.882191781
1:30 0.745205479
2:00 0.64109589
2:30 0.589041096
3:00 0.652054795
3:30 0.663013699
4:00 0.616438356
...
答案 0 :(得分:0)
library(dplyr)
library(lubridate)
count(weekday = wday(arrivaltime),
hour = floor_date(arrivaltime, "30 minutes")) %>%
mutate(mean_arrival = n / 365)