Borrar filtros
Borrar filtros

smallest n such that vector(n) < a

2 visualizaciones (últimos 30 días)
Kaushik
Kaushik el 21 de Dic. de 2012
hi,
is there a efficient way that given a vector "vec" whose elements are monotonic increasing i can find the smallest index such that vec(n) < a. where "a" is some given value.
  1 comentario
Image Analyst
Image Analyst el 21 de Dic. de 2012
Editada: Image Analyst el 21 de Dic. de 2012
The smallest/lowest/first index will be the first one (index = 1) like Azzi said. But that is a trivial case and I think you actually mean the highest index, and that is what Wayne gave you code for. Like m = [11 12 13 14 15] and the value = 13.1. The lowest index where m < 13.1 is 1 and the highest is 3. Please confirm/clarify.

Iniciar sesión para comentar.

Respuesta aceptada

Wayne King
Wayne King el 21 de Dic. de 2012
Editada: Wayne King el 21 de Dic. de 2012
x = 1:100;
a = 50;
[val,idx] = find(x<a,1,'last');
idx is the index of vec() and val is the value
If the values in the vector are monotonically increasing as you describe, then the 'last' option gives you the last index. Did you really mean you want the "smallest"?

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 21 de Dic. de 2012
Editada: Azzi Abdelmalek el 21 de Dic. de 2012
v=[10 12 4 5 9 20]
idx=find(v<5,1)
  1 comentario
Azzi Abdelmalek
Azzi Abdelmalek el 21 de Dic. de 2012
If v is increasing, the first index, if it exist, must be 1

Iniciar sesión para comentar.

Categorías

Más información sobre Resizing and Reshaping Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by