how to find array of second minimum value based on the index value

9 views (last 30 days)
Manjutha Manavalan
Manjutha Manavalan on 6 May 2016
Commented: Azzi Abdelmalek on 6 May 2016
index=[1 2 3 4 5];
p(i)=[0.1 0.2 0. 3 0.4 0.5];
based on the random position of p(i) second minimum value should occur not the index value
  1 Comment
Azzi Abdelmalek
Azzi Abdelmalek on 6 May 2016
What random position? "second minimum value should occur": what does that mean?

Sign in to comment.

Answers (1)

Weird Rando
Weird Rando on 6 May 2016
Edited: Weird Rando on 6 May 2016
Unique function returns the vector in ascending order discarding any repetitive values. And the find function returns the index value.
p =[0.1 0.2 0.2 0.4 0.5];
a = unique(p);
find(p == a(2), 1,'first')
You can also find all the index value of the 2nd minimum value by replacing the find with
find(p == a(2))

Community Treasure Hunt

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

Start Hunting!

Translated by