Подсчет количества строк в течение одной секунды от текущей метки времени строки - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть набор данных журнала ЦП, который записывает данные с неравномерными интервалами.Для каждой строки я хотел бы посчитать количество строк, которые произошли в течение последней секунды этой частичной строки.Пример данных в первых двух столбцах, с ожидаемым выводом в третьем столбце.Для первых n строк, которые появляются менее чем за секунду от начала журнала, вывод равен NA.

timestamp (POSXIct)           data   output
2018-09-19 00:53:48.014469    123    NA
2018-09-19 00:53:48.031590    123    NA
2018-09-19 00:53:48.052569    123    NA
...
... 56 other rows not shown
...
2018-09-19 00:53:48.015465    123    60  --> first row that is >=1 sec from the start of the file
2018-09-19 00:53:48.017463    123    61  --> 61 rows within 1 sec from this time including this row
2018-09-19 00:53:48.018862    123    62  --> 62 rows within 1 sec from this time
2018-09-19 00:53:48.024468    123    62
2018-09-19 00:53:48.031869    123    61
2018-09-19 00:53:48.081869    123    50  --> 50 rows within 1 sec from this time

В данный момент я использую прямой цикл for, но времячрезмерно для разумного количества данных.Я смотрел на попытку использовать сочетание этажей, совокупных подсчетов, findInterval, суммирования и т. Д., Но я не мог найти способ, который работает, учитывая период неравномерного интервала.Есть идеи по ускорению внедрения?

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