Find the first position of maximum value in a Matrix

58 ビュー (過去 30 日間)
Moe
Moe 2014 年 5 月 5 日
コメント済み: suchismita 2014 年 6 月 18 日
Hello everyone,
Suppose there can be the max value at more than one location, how can I catch the first max value.
A = [6;7;21;4;9;21;5;1];
max(A(:))
[maxValue, linearIndexesOfMaxes] = max(A(:));
[rowsOfMaxes colsOfMaxes] = find(A == maxValue)
ans =
21
rowsOfMaxes =
3
6
colsOfMaxes =
1
1
Then I want it to be:
ans =
21
rowsOfMaxes =
3
colsOfMaxes =
1
Can anyone please help me?
  1 件のコメント
the cyclist
the cyclist 2014 年 5 月 5 日
I'm confused as to why you are referring to rows and columns, when the original input is a vector, not a matrix.

サインインしてコメントする。

採用された回答

José-Luis
José-Luis 2014 年 5 月 5 日
編集済み: José-Luis 2014 年 5 月 5 日
[maxValue, linearIndexesOfMaxes] = max(A(:));
[rowsOfMaxes colsOfMaxes] = find(A == maxValue,1,'first')
Please accept an answer if it helped you.
  2 件のコメント
Moe
Moe 2014 年 5 月 5 日
Thanks Jose. It was very helpful.
suchismita
suchismita 2014 年 6 月 18 日
if i want to find the 3rd max value as '9' and its position...what shall i do?????

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatched Filter and Ambiguity Function についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by