Find the first position of maximum value in a Matrix
52 views (last 30 days)
Show older comments
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 Comment
the cyclist
on 5 May 2014
I'm confused as to why you are referring to rows and columns, when the original input is a vector, not a matrix.
Accepted Answer
José-Luis
on 5 May 2014
Edited: José-Luis
on 5 May 2014
[maxValue, linearIndexesOfMaxes] = max(A(:));
[rowsOfMaxes colsOfMaxes] = find(A == maxValue,1,'first')
Please accept an answer if it helped you.
2 Comments
suchismita
on 18 Jun 2014
if i want to find the 3rd max value as '9' and its position...what shall i do?????
More Answers (0)
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!