Я пытаюсь найти функцию или логику, которая может извлечь рабочие дни (-bhols) из дат начала и окончания, но сначала упорядочить, чтобы удалить перекрывающиеся диапазоны дат для тех же заказов, с окончательным результатом группировки по заказам как по примерам ниже (Применим к фрейму данных)
- "Рабочие дни" были созданы в Excel для демонстрационных целей, фрейм данных имеет порядок, начало, конец.
# Test Function
test <- Vectorize(
function(a, b)
{
seq(a, b, by = "days")
})
# Data Frame
order <- c("CFM8" ,"CFM8","CFM8" ,"CFM8", "CFQ3","CFQ3","CFQ3")
start <- c("2018/01/01","2018/01/08","2018/01/02","2018/01/15","2018/03/01","2018/03/05","2018/03/21")
end <- c("2018/01/10","2018/01/12","2018/01/06","2018/01/30","2018/03/31","2018/03/17","2018/03/31")
df <- data.frame(order,start,end) %>%
mutate(start = ymd(start), end = ymd(end))
# Apply Function
df %>%
mutate(wd = test(start,end))