Отфильтруйте даты, когда время в течение 5 дней - PullRequest
0 голосов
/ 26 ноября 2018

мой фрейм данных выглядит следующим образом

    df <- read.table(text="
                 id       date
    1            1        2016-12-01 
    2            2        2017-01-02 
    3            4        2017-01-02 
    4            6        2017-01-02 
    5            7        2017-01-02 
    6            9        2017-01-02
    7            10       2017-08-02
", header=TRUE)

Мне нужно отфильтровать даты, для которых difftime равно или меньше пяти дней.В приведенном выше примере это должны быть идентификаторы между 2-9

1 Ответ

0 голосов
/ 26 ноября 2018
library(tidyverse)
library(lubridate)

df$date <- ymd(df$date)

df$flag <- ifelse(difftime(lead(df$date), df$date, units = c("days")) >=5,1,0)

df[is.na(df)] <- 0

Это может быть ответ, который вы ищете.

...