how to find index of the point in matrix with condition?

21 visualizaciones (últimos 30 días)
ha ha
ha ha el 28 de Ag. de 2017
Comentada: Quincy Sproul el 20 de Nov. de 2022
Let's say, i have matrix 6-by-1 matrix:
A=[ 1 --->labelling "1"
6 --->labelling "2"
3 --->labelling "3"
5 --->labelling "4"
-3 --->labelling "5"
10 ] --->labelling "6"
and
B=[5]
I want to write the code to compare each value in matrix A with B with condition ( If {A}<B---> I will pick up the index and the value from matrix A to make a new matrix)
Particurly: I have the number 1,3, -3 (in matrix A) is smaller than 5 (in matrix B) so I will have the result after compare condition as follows:
C=[ 1 --->labelling "1"
3 --->labelling "3"
-3 ] --->labelling "5"
and the labelling matrix D will be :
D=[ 1
3
5 ]
How to write a relationship between matrix A,B,C,D ?
  2 comentarios
KL
KL el 28 de Ag. de 2017
Read the documentation. Your questions have direct and simple answers right there.
Quincy Sproul
Quincy Sproul el 20 de Nov. de 2022
yeh read the entire documentation for a single question.

Iniciar sesión para comentar.

Respuesta aceptada

Benjamin Imbach
Benjamin Imbach el 28 de Ag. de 2017
Editada: Benjamin Imbach el 28 de Ag. de 2017
check out the find function.
A = [1 6 3 5 -3 10]';
B = 5;
D = find(A<B); %(linear index)
C = A(D);
  1 comentario
Jan
Jan el 28 de Ag. de 2017
Editada: Jan el 28 de Ag. de 2017
This is even more efficient with "logical indexing": omit the "find".
C = A(A < B)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing 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!