# How Can I determine minimum value in a double array?

5 views (last 30 days)
Mira le on 28 Nov 2021
Commented: Chunru on 29 Nov 2021
Hello every one;
have an array :
vect =[ 2.6660 2.2852 10.0000 3.2617 10.0000 10.0000 9.8532]
I want to get the mininmum value as well as its position
here in this vector:
min = 2.2852
position = 2
I need it to continue my program
Thank you

Image Analyst on 28 Nov 2021
Don't use the built-in min function. It's second return argument will only return the location of the first occurrence of the min value. A more robust and general solution is to use min() in combination with find():
vect =[ 2.6660 2.2852 10.0000 2.2852 3.2617 10.0000 10.0000 9.8532];
minValue = min(vect(:))
minValue = 2.2852
% Find all the rows and columns where that value occurs:
indexes = find(vect == minValue)
indexes = 1×2
2 4
See how in this case, where the min occurred in two locations, it found both of them: one at vect(2) and another one at vect(4).
##### 2 CommentsShowHide 1 older comment
Image Analyst on 28 Nov 2021
clear('min'); % Get rid of your min variable you previously created.
vect =[ 2.6660 2.2852 10.0000 2.2852 3.2617 10.0000 10.0000 9.8532];
minValue = min(vect(:))
% Find all the rows and columns where that value occurs:
indexes = find(vect == minValue)

Chunru on 28 Nov 2021
vect =[ 2.6660 2.2852 10.0000 3.2617 10.0000 10.0000 9.8532];
[vmin, idx] = min(vect)
vmin = 2.2852
idx = 2
Chunru on 29 Nov 2021
Then show your code so that we can help.

R2017a

### Community Treasure Hunt

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

Start Hunting!