4
이벤트에 등록한 사람의 수와 함께 시작 날짜와 종료 날짜가있는 데이터 프레임이 있습니다. 나는 (예를 들어, 7시에서 17시까지) 각 당사자가 특정 기간 내에을 위해 존재하는 시간의 수를 계산하고 싶은두 날짜 사이의 일일 "영업 시간"계산
나는 다음과 같은 예를 들어 data.frame을 사용하는 경우 ...
d <- data.frame(startDate = c(as.POSIXct("2011-06-04 08:00:00"), as.POSIXct("2011-06-03 08:00:00"),
as.POSIXct("2011-09-12 10:00:00")),
endDate = c(as.POSIXct("2011-06-06 11:00:00"), as.POSIXct("2011-06-04 11:00:00"),
as.POSIXct("2011-09-12 18:00:00")),
partysize = c(124,442,323))
open <- "07:00"
close <- "17:00"
day numhours partysize
2011-06-04 9 124
2011-06-05 10 124
2011-06-06 4 124
2011-06-03 9 442
2011-06-04 4 442
2011-09-12 7 323
참고 :
나는 이런 식으로 뭔가를하도록 설정하고 내 결과를하고 싶은 날짜가 개폐 시간 사이에 포함 된 시간의 수는 NUMHOURS입니다
사전에 617,451,515,감사합니다, 죄송합니다 --JT
예, 추한 ...하지만 작동합니다 :) 감사합니다! – JimmyT
나는 오늘 이걸 가지고 놀았고, 난독성을 위해 만든 유일한 수정은 시퀀스를 사용하여 app.days app.days를 작성하는 것이 었습니다. <- mapply (function (x, y) {seq (x, y, by = "day")} (형식 (d $ endDate, "% Y- % m- % d"))), as.POSIXct (형식 (d $ startDate, "% Y- % m- % d")) ) – JimmyT