У меня есть data.frame, в котором список дат хранится в одном столбце, а дата - в другом. Я хочу фильтровать фрейм данных только по датам, когда месяц и день попадают в диапазон месяца и дня.
Например:
set.seed(1)
dat = data.frame(start = seq.Date(today() - 5, today(), 'day'), end = seq.Date(today(), today() + 5, 'day'))
dat1 = dat %>% rowwise() %>% mutate(range = list(seq.Date(start, end, 'day')))
dat1$date = sample(seq(as.Date('1998/10/01'), as.Date('1998/12/01'), by="day"), 6)
и я пытаюсь отфильтровать по
dat1[format(dat1$date, '%m%d') %in% format(dat1$range, '%m%d'), ]
но я получаю ошибку:
Ошибка в prettyNum (.Internal (формат (x, усечение, цифры, nsmall, ширина, 3L,:
неверный аргумент 'trim'
Где я ожидал
Source: local data frame [1 x 4]
Groups: <by row>
# A tibble: 6 x 4
start end range date
<date> <date> <list> <date>
1 2018-10-24 2018-10-29 <date [6]> 1998-10-17 ## as pointed out in comments
## this is incorrect. It would return an empty data.frame.