#matlab #matrix
#matlab #матрица
Вопрос:
Мне нужно получить индексы максимальных значений столбцов в матрице, например:
a =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
и я хочу получить
[1, 4, 4, 1]
которые являются индексами 16,14,15,13, т. Е. максимальным значением в каждом столбце. Я обнаружил, что
max(a,[],1)
ВОЗВРАТ
[16, 14, 15, 13]
Как я могу получить их индексы?
Ответ №1:
Вам нужно найти индексы, а не сами числа, поэтому вам нужен второй выходной аргумент.
[~,I] = max(a)
Комментарии:
1. о, ~ это аккуратный трюк. обычно я просто использую ненужную переменную.
2. @thang: Хотя я думаю, что это не поддерживалось в предыдущих версиях MATLAB
3. @AlirezaMirian Это поддерживалось в течение последних четырех лет, так что я думаю, что это довольно надежное предположение.