Использование функции lubridate
floor_date
:
df$interv<-lubridate::floor_date(df$time, unit="15 minutes")
(Предполагается, что ваш столбец времени имеет некоторый распознанный формат даты и времени (например, POSIXt), который, по-видимому, не соответствует формату вашего образца.)
Например:
a<-Sys.time()
a
[1] "2019-01-08 09:22:22 EST"
floor_date(a,unit="15 minutes")
[1] "2019-01-08 09:15:00 EST"