0
我试图弄清楚在给定时间(抵达和结帐时间之间)有多少人在办公室。我有一个没有NA值的数据帧。我想计算每5分钟的音量。R:计算两次之间的行数
library(timeDate)
#change from factor to datetime
data$ArrivalDtm<- timeDate(data$ArrivalDtm)
data$CheckoutDtm<- timeDate(data$CheckoutDtm)
然后我创建5钟座:
#make a df of 5 minute intervals
blocks <- as.data.frame(seq(from= timeDate("2015-12-31 23:00:00"), to=timeDate("2017-06-13 23:00:00"), by='5 mins'))
然后我试图通过走访的DF迭代计算有多少人已签,但在该块时都查不出来。
for (i in blocks) {
for (visit in 1:nrow(data)){
waitingroom <- sum(data$ArrivalDtm[visit] > i & i < data$CheckoutDtm[visit])
}
}
当我运行的循环我得到这个错误:
Error in sum(data$ArrivalDtm[visit]) : invalid 'type' (S4) of argument
数据
ArrivalDtm<- c("2016-05-10 20:34:00", "2016-04-13 22:46:00", "2016-12-15 13:18:00", "2016-02-26 18:32:00", "2016-04-25 13:55:00")
CheckoutDtm <- c("2016-05-10 20:37:00", "2016-04-14 00:23:00", "2016-12-15 13:27:00", "2016-02-26 18:53:00", "2016-04-25 14:33:00")
您能否提供一些样本数据以帮助那些可能试图回答的人? – BLT
您有权利,而不是最好的方法,但需要查看一些示例数据来调试错误。 – Masoud
以下是一些示例数据。 ArrivalDtm < - c(“2016-05-10 20:34:00”,“2016-04-13 22:46:00”,“2016-12-15 13:18:00”,“2016-02-26 18:32:00“,”2016-04-25 13:55:00“) CheckoutDtm < - c(”2016-05-10 20:37:00“,”2016-04-14 00:23: 00“,”2016-12-15 13:27:00“,”2016-02-26 18:53:00“,”2016-04-25 14:33:00“) – mzee