I have a data.frame with start and end time:
ranges<- data.frame(start = c(65.72000,65.72187, 65.94312,73.75625,89.61625),stop = c(79.72187,79.72375,79.9
You can try this:
library(dplyr) ranges %>% arrange(start) %>% group_by(g = cumsum(cummax(lag(stop, default = first(stop))) < start)) %>% summarise(start = first(start), stop = max(stop)) # A tibble: 2 × 3 # g start stop # #1 0 65.72000 87.75625 #2 1 89.61625 104.94062