У меня есть вектор, который содержит номера образцов маркеров событий. Они перечислены только при обнаружении события, а не в каждом образце. Я хотел бы получить вывод о количестве событий, найденных каждую секунду. Частота дискретизации известна (15 Гц).
Я выяснил, как это сделать с помощью для l oop, но он работает немного медленнее. Я изо всех сил пытаюсь найти более эффективный способ выполнить этот расчет (с mapply или что-то подобное может быть?). Кто-нибудь есть какие-либо предложения?
Вот пример того, что я делаю:
vec <- c(9,20,23,48,50,51)
fs <- 15
start_idx <- seq(from=1,to=46,by=15)
end_idx <- seq(from=15,to=60,by=15)
counter <- vector()
for (i in 1:length(start_idx)) {
counter[i] <- length(which(vec >= start_idx[i] & vec <= end_idx[i]))
}
Результаты счетчика должны быть:
> counter
[1] 1 2 0 3
Любая помощь высоко ценится!