How can I get a vector out of a matrix?

8 visualizaciones (últimos 30 días)
Shang Gao
Shang Gao el 9 de Sept. de 2017
Editada: Stephen23 el 9 de Sept. de 2017
Given a two dimension matrix, if I want to extract 3 elements with subsript (1,2) (2,4) (3,6) to form a vector, how I can I achieve that without using a double loop? Because if I just use M(1:3,2:2:6), the result will also be a matrix. Can someone give me a simple solution?
  2 comentarios
KALYAN ACHARJYA
KALYAN ACHARJYA el 9 de Sept. de 2017
Editada: KALYAN ACHARJYA el 9 de Sept. de 2017
First convert Matrix to vector
%
vector=matrix(:);
%Do the Operation
result=[vector(1,2),vector(2,4),vector(1,2),vector(3,6)]
%
Stephen23
Stephen23 el 9 de Sept. de 2017
Editada: Stephen23 el 9 de Sept. de 2017
@KALYAN ACHARJYA: a column vector has no columns 2, 4, or 6.
One good way is to use sub2ind, as José-Luis has already answered.

Iniciar sesión para comentar.

Respuestas (1)

José-Luis
José-Luis el 9 de Sept. de 2017
Sounds like a job for sub2ind()

Categorías

Más información sobre Logical 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