What is the meaning in this instrument

1 visualización (últimos 30 días)
Alaaeldin Mohamed
Alaaeldin Mohamed el 2 de Feb. de 2018
Editada: Alaaeldin Mohamed el 2 de Feb. de 2018
I want to know the meaning of this MATLAB command
>> v = unique(m(d==1,2))
where m and d are matrices with dimensions (50x2) and (50x1) respectively.

Respuesta aceptada

Walter Roberson
Walter Roberson el 2 de Feb. de 2018
d == 1 where d is a vector, produces a logical vector as output -- a vector of true and false values.
When you use a logical vector as a subscript, that is called "logical indexing", and it selects for output all locations where the vector is true. In this context, those are used to select rows -- so the m(d==1,2) selects column 2 of all rows of m corresponding to the positions where d==1 is true.
v = unique(m(d==1,2))
acts the same as
temp = find(d==1);
v = unique(m(temp, 2))
  1 comentario
Alaaeldin Mohamed
Alaaeldin Mohamed el 2 de Feb. de 2018
Editada: Alaaeldin Mohamed el 2 de Feb. de 2018
Thank you very much. It works well

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Operators and Elementary Operations 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