【发布时间】:2023-03-04 13:19:01
【问题描述】:
我想在属于区间的向量中找到值的索引,这些区间由结束值向量和 1)“回顾”值区间和 2)前 N 个值定义。
假设我有
x <- c(1,3,4,5,7,8,9,10,13,14,15,16,17,18) #the vector of interest
v_end <- c(5, 7, 15) #the end values
l<-3 #look-back value interval
N<-3 #number of value to look back
我想要的是以下输出的第二列和第三列。
x i n
[1,] 1 0 1
[2,] 3 1 1
[3,] 4 1 1
[4,] 5 1 1
[5,] 7 1 1
[6,] 8 0 0
[7,] 9 0 0
[8,] 10 0 1
[9,] 13 1 1
[10,] 14 1 1
[11,] 15 1 1
[12,] 16 0 0
[13,] 17 0 0
[14,] 18 0 0
注意 v_end 和 l 产生三个区间 [2,5],[4,7],[12,15]。 [2,5]和[4,7]有重叠,本质上是[2,7]。 并且,v_end 和 l 产生三个区间 [1,5]、[3,7]、[10,15]。再次有重叠。
任务类似于函数findInterval{base},但不能解决。
【问题讨论】: