Как найти все минимальные элементы в векторе - PullRequest
2 голосов
/ 01 марта 2011

В Matlab с помощью функции min () , я могу получить только один минимальный элемент вектора, даже если может быть несколько одинаковых минимальных элементов.Мне было интересно, как получить индексы всех минимальных элементов в векторе?

Например,

v=[1,1];

Я хотел бы получить индексы 1 и 2, оба из которых индексируютСамые маленькие элементы 1.

Спасибо и всего наилучшего!

Ответы [ 2 ]

12 голосов
/ 01 марта 2011

Вы можете использовать find, чтобы найти минимальные значения:

find(v == min(v))
3 голосов
/ 01 марта 2011
v = [1 2 3 1 5];
find( v == min(v) )

ans = 1 4

По крайней мере, в Octave (без matlab), это возвращает индексы всех минимумов в v

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...