Find the first position of maximum value in a Matrix
18 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
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 Kommentar
the cyclist
am 5 Mai 2014
I'm confused as to why you are referring to rows and columns, when the original input is a vector, not a matrix.
Akzeptierte Antwort
José-Luis
am 5 Mai 2014
Bearbeitet: José-Luis
am 5 Mai 2014
[maxValue, linearIndexesOfMaxes] = max(A(:));
[rowsOfMaxes colsOfMaxes] = find(A == maxValue,1,'first')
Please accept an answer if it helped you.
2 Kommentare
suchismita
am 18 Jun. 2014
if i want to find the 3rd max value as '9' and its position...what shall i do?????
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!