我有以下问题。假设我有一个向量:
v = [1,2,3,4,5,1,2,3,4,...]
我想从向量中按顺序对点进行采样,这些点的绝对差值高于先前采样点的阈值。所以说我的门槛是2。
我从索引 1 开始,对第一个点 1 进行采样。然后在 v[3] 处满足我的条件,我对 3 进行采样(因为 3-1 >= 2)。然后 3,新的采样点成为我检查的参考点。下一个采样点是 5,即 v[5] (5-3 >= 2)。然后下一点是 1,即 v[6] (abs(1-5) >= 2)。
不幸的是,我在 R 中的代码耗时太长。基本上我正在反复扫描数组并寻找匹配项。我认为这种方法很幼稚。我有一种感觉,我可以通过阵列一次完成这项任务。我不知道如何。任何帮助表示赞赏。我想我遇到的问题是下一个采样点的位置可以在数组中的任何位置,我需要从当前点扫描数组到末尾才能找到它。
谢谢。