Я определил следующую функцию, которая подсчитывает количество дней недели в периоде.
library(tidyverse)
library(lubridate)
fx_weekdays <- function(start_date, end_date){
start_date <- as_date(start_date)
end_date <- as_date(end_date)
sum(!weekdays(seq(start_date, end_date, "days")) %in% c("Friday", "Saturday"))
}
Далее я хотел бы перебрать следующий фрейм данных с помощью map_int () и добавить новый столбец для захвата результатов.
df <- data.frame(start_date=c('2018-1-1','2018-2-1'),
end_date=c('2018-1-31','2018-2-28'))
df %>%
mutate(n_weekday = map_int(df, fx_weekdays(start_date, end_date)))
Я получаю ошибку.
Ошибка в mutate_impl (.data, dots): Ошибка оценки: 'from' must
быть длиной 1.
Я не знаю, чего мне не хватает, поскольку следующий пример работает, как и ожидалось.
fx_weekdays('2018-3-12', '2018-4-12')