find array indices of minimum value in a 2Darray

I have a 2d array with a minimum vakue of 50
How do I find the array indices for this value?

Answers (2)

[r, c] = find(A==min(A, [], 'all');

5 Comments

thanks walter that works Chuck
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.
can this be extended to find the coordinates of a 3D array
[~, linearidx] = min(A(:));
[r,c,p] = ind2sub(size(A), linearidx);
thanks much i will try this

Sign in to comment.

really appreciate Walters response - very helpful

Categories

Asked:

on 31 Jan 2021

Community Treasure Hunt

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

Start Hunting!