Генерация условной последовательности даты / времени с использованием метки времени UNIX - PullRequest
0 голосов
/ 12 марта 2019

Я хотел бы сгенерировать последовательность дат / времени с использованием меток времени UNIX с некоторыми условиями. В настоящее время я использую модификацию из этого поста: https://stackoverflow.com/a/11531486/9291688

df$timestamp<-as.POSIXct((as.numeric(as.POSIXct("2018-05-08 3:00:00 PDST"))-60 + cumsum(rep(c(60,60,60,60,60,60,60,60,60,60,85860),11)))[(1:nrow(df))], origin="1970-01-01")

Который генерирует метку времени для каждой минуты с 3: 00-3: 09 AM по порядку, пока не достигнет последнего повтора, который затем переходит на следующий день в 3:00 AM.

Я считаю, что проблема в том, что при использовании cumsum следующая дата, сгенерированная в последовательности, - 3: 01-3: 10 AM, следующая дата - 3: 02-3: 11 AM и т. Д.

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

Index       UT
0           2018-05-08 03:00:00
1           2018-05-08 03:01:00
2           2018-05-08 03:02:00
3           2018-05-08 03:03:00
4           2018-05-08 03:04:00
5           2018-05-08 03:05:00
6           2018-05-08 03:06:00
7           2018-05-08 03:07:00
8           2018-05-08 03:09:00
9           2018-05-09 03:00:00 **first sequence works fine and starts at 3:00 again the next day
10          2018-05-09 03:01:00
11          2018-05-09 03:02:00
12          2018-05-09 03:03:00
13          2018-05-09 03:04:00
14          2018-05-09 03:05:00
15          2018-05-09 03:06:00
16          2018-05-09 03:07:00
17          2018-05-09 03:08:00
18          2018-05-09 03:09:00 
19          2018-05-09 03:10:00 **this is where things start going screwy
20          2018-05-10 03:01:00 **this should start at 3:00, not 3:01
21          2018-05-10 03:02:00
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...