我正在搜索一种方法(没有 for 循环)来查找数组中最大连续 TRUE 的 ID 和长度。例如
foo <- as.numeric(runif(100) > 0.5)
给你 100 个混洗的 0 和 1。现在我正在搜索最长的连续行 1 和这个数组中的相应 ID。例如
foo2 <- c(0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1)
应该导致
max.dur = 8
max.ids = c(6, 13)
我尝试了 table、cumsum 和 which 的组合,但找不到合适的方法来做到这一点。