I have a numeric vector in R, say
v= c(2,3,5,6,7,6,3,2,3,4,5,7,8,9,6,1,1,2,5,6,7,11,2,3,4)
现在,我必须找出大小为4的所有连续子向量,并满足子向量中的每个元素都大于2,并且所有子向量在无重叠的意义下是不相交的。因此,我的输出将是:
(3,5,6,7),(3,4,5,7),(5,6,7,11)
编辑:其他例子仅为说明目的:for,v=c(3,3,3,3,1,3,3,3,3,3,3,3,3)
输出结果如下:
(3,3,3,3), (3,3,3,3),(3,3,3,3).
并且,针对于:
v= c(2,3,5,5,7,6,3,2,3,4,5,7,8,9,6,1,1,2,5,6,7,11,2,3,4)
输出结果将为:
(3,5,5,7),(3,4,5,7),(5,6,7,11)
第二个输出条件是,如果我们找到任何一个子数组,比如说
(v[m], v[m+1], v[m+2], v[m+3])
,其中每个元素都大于2,则它将被放入我的输出中,并且下一个子数组只能从v[m+4]
(如果可能的话)开始。