Проблема: Я пытаюсь добавить к объекту data.table ниже столбец, в котором для каждой строки будет отображаться список недель. Т.е. если START = "2020-01-01" и END = "2020-01-15", столбец недели должен состоять из списка соответствующих недель для этого временного интервала (2020 W01, 2020 W02, 2020 W03). Я хочу сохранить функцию, которая подготавливает данные отдельно из-за структуры кода. Однако текущая функция приводит к ошибке.
Вопрос: Есть ли способ сделать это так просто, т.е. без ссылки на вызов функции get_weeks
на объект data.table? Как может выглядеть измененная функция? Ура!
dt <- data.table(
ID = c(1, 2, 3),
START = c("2020-01-01", "2020-03-01", "2020-03-14"),
END = c("2020-01-15", "2020-03-12", "2020-03-26")
)
get_weeks <- function(start_date, end_date){
date_range <- c(start_date, end_date)
date_range <- ymd(date_range)
dt_range <- seq.Date(date_range[1], date_range[2], "day")
dt_range_week <- list(unique(format(as.Date(dt_range), "%G W%V")))
dt_range_week
}
dt[, weeks_for_filter_table := get_weeks("START", "END")]