0
不介意看到其他解決方案,但我也不明白爲什麼我得到不完整和錯誤的答案。 (lubricate :: interval出錯)加入時間點在間隔內的數據
例如del_time [1,]不在時間間隔[3,]中。我們的目標是將「狀態」加入del_time,其中時間間隔爲間隔。
示例數據:
library(lubridate)
library(dplyr)
ti <- now()
times <- tibble(time1 = c(ti + 3600, ti + 7200, ti + 10800, ti + 14000),
time2 = time1 + 3599, status = c("One", "Two", "Three", "Four"))
del_time <- tibble(time = times$time1 + 1750)
代碼:
FUN1 <- function(x,y){
x <- ymd_hms(x)
which_int <- x %within% interval(start = y[[1]], end = y[[2]])
out <- as.character(y[which_int, 3])
return(out)
}
del_time$status <- apply(del_time[, 1], 1, FUN1, y = times)
del_time
你也可以從'dplyr'看看[beetwen](https://www.rdocumentation.org/packages/dplyr/versions/0.5.0/topics/between) – count
%from%from data.table,不知道dplyr有它的版本,謝謝。 – MLEN