에 의해 작은 경우 :합 시간 차이가 ID로 값보다이 문제에 관한 유형
: Sum if the date difference is smaller than a value 가 지금은 @Davis 본입로 이전 12 시간 덕분에 일어난 사건의 수를 계산 할 수있을df <- tribble(
~fechayhora, ~id, ~tipo,
"2017-03-17 08:03:00", "A", "APF",
"2017-05-17 10:34:00", "A", "APF",
"2017-05-17 12:52:00", "A", "APF",
"2017-05-17 08:52:00", "A", "APP",
"2017-05-17 10:52:00", "A", "APP",
"2017-05-17 10:46:00", "B", "APP",
"2017-05-17 14:23:00", "B", "APP",
"2017-05-17 17:29:00", "B", "APF"
)
df <- df %>%
mutate(fechayhora = as.POSIXct(fechayhora),
minus_12 = fechayhora - hours(12))
df <- df %>% mutate(
number_of_APF_12h = map2_dbl(.x = fechayhora,
.y = minus_12,
.f = ~sum(between(df$fechayhora, .y, .x)) -
1))
그런 다음 "id"및 "tipo"(유형)별로 그룹화하려고합니다. 나는 아무가 성공과 함께, 데이터 테이블 및 데이터 프레임 tryed했습니다
df=df[,number_of_failures_12h = map2_dbl(.x = fechayhora,
.y = minus_12,
.f = ~sum(between(df$fechayhora, .y, .x)) -
1)),by=.(tipo,id)]
또는
df <- df %>%
group_by(id,tipo)
%>% mutate(
number_of_failure = map2_dbl(.x = fechayhora,
.y = minus_12,
.f = ~sum(between(df$fechayhora, .y, .x)) -
1)) %>%
ungroup()
결과 예상 :
fechayhora id tipo n_APP n_APF
"2017-03-17 08:03:00", "A", "APF", 0 0
"2017-05-17 10:34:00", "A", "APF", 0 1
"2017-05-17 12:52:00", "A", "APF", 0 2
"2017-05-17 08:52:00", "A", "APP", 0 2
"2017-05-17 10:52:00", "A", "APP", 1 2
"2017-05-17 10:46:00", "B", "APP", 0 0
"2017-05-17 14:23:00", "B", "APP", 1 0
"2017-05-17 17:29:00", "B", "APF" 0 0
감사합니다!
는
죄송합니다, 추측 – akrun
의 많은 당신이 원하는 경우에,없는 것을 말해있다 분명 당신에게 감사합니다 – Martu
어떻게 할 수 없으므로 dplyr로 예상 출력을 얻었습니까 – akrun