Borrar filtros
Borrar filtros

how to split column vector when 0 come?

1 visualización (últimos 30 días)
Sagar Dhage
Sagar Dhage el 10 de Sept. de 2014
Editada: Robert Cumming el 10 de Sept. de 2014
I have a column vector A= (0;23;45;64;34;3;0; 12; 14;0; 12;354;13;324;25;254;0) I want to split A column vector when ) values 0 come, such that i should get A1= (0;23;45;64;34;3;0) A2= (0; 12; 14;0) A3=(0; 12;354;13;324;25;254;0)

Respuestas (1)

Robert Cumming
Robert Cumming el 10 de Sept. de 2014
Editada: Robert Cumming el 10 de Sept. de 2014
You could do:
A= [0;23;45;64;34;3;0; 12; 14;0; 12;354;13;324;25;254;0];
index = find(A==0);
for ii=1:length(index)-1
data.(sprintf('A%i',ii)) = A(index(ii):index(ii+1));
end
Note: I have saved the data in fields in a struct called data - so you get:
data.A1
data.A2
data.A3
edit added link below
This is a better way that using eval to create A1, A2 or A3 for example. See this question and answer for an excellent explanation on why...
  1 comentario
Sagar Dhage
Sagar Dhage el 10 de Sept. de 2014
Thanks Robert. I would be great if we can save A1, A2, A3 in separate column.

Iniciar sesión para comentar.

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by