У меня есть два векторапроверить сосед ячейки в векторе Matlab
K=[1 1 1 2 1 2 1 4 2 10 4 5 1]
и
L=[2 0 1 2 1 2 1 3 2 0 1 2 1]
Я хочу, чтобы сравнить стоимость 7-го элемента в каждом векторе с соседями этого значение, где соседи составляют 5 элементов рядом с этим элементом в каждой стороне. Так что для K
7-й элемент равен 1
, а соседи - 1 1 1 2 1 2
(левые соседи) и 4 2 10 4 5 1
(правые соседи).
Для L
, 7-й элемент 1
и соседи 2 0 1 2 1 2
(левые соседи) и 3 2 0 1 2 1
(правые соседи). Если разница между 7-м значением и каждым из его соседей выше определенного порога, я сделаю что-то, например, X = 1, если нет, тогда я сделаю еще одну вещь, например X=2
.
В моем примере я установил порог в 3, поэтому для K значение 7-го элемента равно 1, а разница между ним и двумя его соседями 10,5 больше порогового значения 3, поэтому X будет 1. Для L значение 5-го элемента равно 1, а разница между ним и всеми его соседями меньше порогового значения 3, поэтому X будет равно 2. Поэтому мне интересно, может ли кто-нибудь помочь мне сделать это условие, m не уверен, что это можно сделать без циклов, чтобы сэкономить время.
для 5-го элемента в векторе есть только 4 элемента с одной стороны (от 1 до 4) ... – bla
Вот почему я попытался отредактировать свой пост до 7-го элемента вместо 5-го, но по какой-то причине редактирование не было принято. Это действительно похоже на 7-е место. – CTZStef
Спасибо, я обновил его. – Tak