Фильтрация в R с dplyr по предыдущему количеству дней - PullRequest
0 голосов
/ 21 ноября 2018

Я пытаюсь отфильтровать строки за последние тридцать дней данных.

last30
    X Y Z Date
    5 4 3 11/15/2018
    7 6 2 11/3/2018
    1 8 4 10/28/2018
    1 2 8 1/2/2018
    3 2 8 4/2/2018

С помощью dplyr я попытался запустить следующее;когда я делаю, я не получаю значений, возвращаемых

last30 %>%
  filter(between(Date, today() - days(30), today()))

1 Ответ

0 голосов
/ 21 ноября 2018

Вот как вы можете решить эту проблему:

last30 <- data.frame(x = c(1,2,3,4,5),
                 y = c(2,1,5,1,5),
                 date = c("11/15/2018", "11/3/2018", "10/28/2018", "1/2/2018", "4/2/2018"))

last30$date <- as.Date(last30$date, format = "%m/%d/%Y")

temp <- subset(last30, last30$date < Sys.Date()-30)

Сначала вы меняете столбец даты, чтобы получить требуемый формат, а затем задаете подмножество в наборе данных.Указано использовать Sys.Date () в качестве текущей даты в R.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...