我有一个如下所示的数据集
xx = c(1:5, 1:9, 1:7)
# [1] 1 2 3 4 5 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7
我想知道序列再次开始之前 1 的索引和最大值。例如:
[1] 1, 1
[2] 5, 5
[3] 6, 1
[4] 14, 9
[5] 15, 1
[6] 21, 7
等等.....
这可以用有点丑陋(但有效!)来回答lapply
:
a<-lapply(1:length(xx),function(x) {
if(x==length(xx)){c(x,xx[x])}else{
if(xx[x] == 1){c(x,1)}else{
if(xx[x]>xx[x+1]){c(x,xx[x])}
}
}
})
matrix(unlist(a),ncol = 2,byrow = T)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句