list <- c(1,1,1,4,5,6,9,9,2)
Хочу найти индекс 3 минимальных значений, но с условием, что индекс найденных минимумов составляет по меньшей мере 3 очка друга от друга. Чтобы найти 3 низкие показатели я используюг Индекс находки минимумов с зазором/расстоянием условием
which(list <= sort(list, decreasing=FALSE)[3], arr.ind=TRUE)
, который не ищет каких-либо условий и результатов в
1,2,3
Мой желаемый результат
1,9,4
Я хочу знать, возможно ли это сделать без каких-либо циклов, так как мой список намного больше.
Большое вам спасибо.
Чтобы уточнить, что я имел в виду: показатели минимумов должны всегда находиться на определенном расстоянии. Например, для списка
list<-c(1,3,9,5,9,9,2)
результатом минимумов должен быть1,7,4
. Не1,7,2
, потому что индексы 1 и 2 слишком близки друг к другу. Еще раз спасибо за помощь.
условия не очень ясны. Вы пытаетесь найти индекс с условием расстояния на «сортированном» векторе или исходном – akrun
Я пытаюсь найти индекс с условием расстояния. – RHelpPlease
Я имел в виду, находится ли расстояние в исходном векторе или отсортировано – akrun