find array indices of minimum value in a 2Darray
Show older comments
I have a 2d array with a minimum vakue of 50
How do I find the array indices for this value?
Answers (2)
Walter Roberson
on 31 Jan 2021
[r, c] = find(A==min(A, [], 'all');
5 Comments
Charles Mistretta
on 31 Jan 2021
Walter Roberson
on 31 Jan 2021
Note: this was specifically coded to be able to find multiple copies if the min is duplicated. If the min is unique then
[~, linearidx] = min(A(:));
[r,c] = ind2sub(size(A), linearidx);
This takes more lines but less processing time, as it does not need to scan the array twice.
Charles Mistretta
on 31 Jan 2021
Walter Roberson
on 31 Jan 2021
[~, linearidx] = min(A(:));
[r,c,p] = ind2sub(size(A), linearidx);
Charles Mistretta
on 31 Jan 2021
Charles Mistretta
on 2 Feb 2021
0 votes
Categories
Find more on Dates and Time 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!