How can I find the max value and location within a matrix
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
zachary laird
il 23 Gen 2021
Commentato: zachary laird
il 23 Gen 2021
I am working with a 7783x1 matrix, and I am trying to find the max value & its location. But I need to do it in the script and not in the command window. I have the matrix data saved as a FILE.mat in the same folder.
0 Commenti
Risposta accettata
Image Analyst
il 23 Gen 2021
Try this, where m is your matrix
maxValue = max(m(:));
rows = find(m == maxValue); % Find all locations where m equals the max value of m
5 Commenti
Image Analyst
il 23 Gen 2021
You did not change the names like I said. Leave the semicolon off line 17 and see what fields it shows in the command window and use that instead of m.
Più risposte (1)
Adam Danz
il 23 Gen 2021
[maxval, idx] = max(M);
2 Commenti
Image Analyst
il 23 Gen 2021
Only finds the FIRST occurrence, not all of them. See how I did it if you want to make sure you find all of them.
Adam Danz
il 23 Gen 2021
That's true, but I'd recommend using logical indexing rather than slowing it down with find()
maxval = max(M);
idx = M==maxval;
Vedere anche
Categorie
Scopri di più su Data Type Conversion in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!