Find a range of minimum values in a vector/array

11 visualizzazioni (ultimi 30 giorni)
Hello everyone! Briefly, I would like to ask if, in MATLAB, exists a function or something else to find a min or max range of values in an array. I mean, if I have [7 2 1 4 34 9 8 5]
And I want to find the a "range" of three numbers, which is the minimumin the array, MATLAB will give me as result
[2 1 4]
And so on.
Thanks in advice, A.M.
  2 Commenti
José-Luis
José-Luis il 6 Mag 2013
What do you mean by "a range"? The three smallest numbers, or the three contiguous smallest numbers?
Alfredo Martini
Alfredo Martini il 6 Mag 2013
I mean the three contiguous smallest numbers. Forgive my english, is very poor.

Accedi per commentare.

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 6 Mag 2013
Modificato: Andrei Bobrov il 6 Mag 2013
I see two ways:
1)
out = sort(yourarray);
out = out(1:3);
2)
[ii,ii] = min(conv(yourarray,[1 1 1],'same'));
out = yourarray(ii-1:ii+1);

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by