Matlab Minimum

8 views (last 30 days)
athpapa -
athpapa - on 3 Mar 2011
Hello,
If I have an array for example: A=[10 11 12 1 8 9 1 3 5] and I use the '[C,I]=min' function to find the minimum value of the array. But if the array has two or more same minimum values, the MIN function always return the first value!How can I get the last minimum value of an array?In my example, I want the 7th value 1 of array A and not the 4th.However, I want this function to work for random arrays and not only for array A.
Thank you..!!

Accepted Answer

Matt Tearle
Matt Tearle on 3 Mar 2011
find(A==min(A))
will get them all. Then you can choose whichever you like. To get just the last one
find(A==min(A),1,'last')
  3 Comments
athpapa -
athpapa - on 3 Mar 2011
I haven't seen your complete answer!Thank you..!!!:)
Andreas Goser
Andreas Goser on 3 Mar 2011
Excellent! Didn't new that one.

Sign in to comment.

More Answers (2)

Andreas Goser
Andreas Goser on 3 Mar 2011
My rough idea is along the lines of sorting the vector first (with saving the indices) and then identify the last minimum.

David Young
David Young on 3 Mar 2011
If you only want the last one, you could use
[v, ind] = min(A(end:-1:1));
ind = 1 + length(A) - ind;

Categories

Find more on Creating and Concatenating Matrices 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!