2013-12-09 2 views
1

У меня есть вектор матрицы диапазона значений, например:Обнаружение мин вектора, что индекс является членом другого вектора

x = [9 8 6 7 4 5 1 2]; 

Я тогда еще один вектор, который содержит индексы значений х, которые соответствуют конкретные критерии, например:

y = [7 8]; % (that is, elements 7 and 8 of x meet criteria) 

Теперь я должен найти минимум x, у которого его индекс является членом y.

Я попытался следующие:

find(x == min(x) & ismember(find(x == min(x)), f) == 1) 

Но это не работает, это, кажется, просто возвращает двоичный ответ и даже тогда, до сих пор не работает. Идея заключалась в том, чтобы найти минимальный индекс и являться членом с помощью find (где я беру индекс min x для ismember).

Любая помощь приветствуется!

ответ

1

Как насчет:

value = min(x(y)); 
value = 1 

x(y) дает элементы x, которые индексируются y. min используется, чтобы найти только самую маленькую.

+0

Отлично, я должен был сделать шаг назад, чтобы думать об этом проще! – user1759208

+1

@ user1759208 Если он решает вашу проблему, пожалуйста, подумайте о принятии ответа –