У меня нерегулярный временной ряд ( xts
в R
), к которому я хочу применить некоторое временное окно. Например, учитывая следующие временные ряды, я хочу вычислить такие вещи, как количество наблюдений в каждом дискретном 3-часовом окне, начиная с 2009-09-22 00:00:00
:
library(lubridate)
s <- xts(c("OK", "Fail", "Service", "OK", "Service", "OK"),
ymd_hms(c("2009-09-22 07:43:30", "2009-10-01 03:50:30",
"2009-10-01 08:45:00", "2009-10-01 09:48:15",
"2009-11-11 10:30:30", "2009-11-11 11:12:45")))
Я, видимо, не могу использовать period.apply ()
или split ()
, чтобы сделать это, потому что они опустят периоды без наблюдений, и я
Мой желаемый выход для простой задачи подсчета (хотя, конечно, мои реальные задачи сложнее с каждым сегментом!) был бы примерно таким, если бы я собирал 3 дня за раз:
2009-09-22 1
2009-09-25 0
2009-09-28 0
2009-10-01 3
2009-10-04 0
2009-10-07 0
2009-10-10 0
2009-10-13 0
2009-10-16 0
2009-10-19 0
2009-10-22 0
2009-10-25 0
2009-10-28 0
2009-10-31 0
2009-11-03 0
2009-11-06 0
2009-11-09 2
Спасибо за любое руководство.
-121--1187041-Как найти все пересечения (также называемые наиболее длинными общими подстроками) двух строк и их положения в обеих строках?
Например, если S1 = "never"
и S2 = "forever"
, то результатом пересечения должно быть ["ever"]
, а его позициями являются [(1,3)]
. Если S1 = "адрес"
и S2 = "странность"
, то полученными пересечениями являются ["dd", "ess"]
, а их позициями являются [(1,1), (4,4)]
.
Кратчайшее решение без включения библиотеки является предпочтительным. Но любое правильное решение также приветствуется.