假设我有以下序列:
x = c( 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0)
R 中是否有一种优雅的方法来返回每个 1 序列的开始和停止索引?
答案应该是一个 2 列数组,其中 nRows = 1 序列的数量:
startIndx = [ 1, 5, 7 ]
stopIndex = [ 2, 5, 9 ]
Thanks.
BSL
假设您的向量由 0 和 1 值组成:
which(diff(c(0L, x)) == 1L)
#[1] 1 5 7
which(diff(c(x, 0L)) == -1L)
#[1] 2 5 9
否则你需要类似的东西x <- x == 1L
first.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)