Borrar filtros
Borrar filtros

for look and store in a 2x2 matrix

2 visualizaciones (últimos 30 días)
Damith
Damith el 19 de Mayo de 2014
Comentada: Matt J el 20 de Mayo de 2014
Hi,
I have this for loop and it's working fine. But the output (A) is a 2x2 matrix. How can i store the outputs in A1,A2....A183 like for all i's in the loop.
for i=122:1:305
A=DamithCount(S1(i,:),S1(i+1,:));
end
Thanks in advance for help.

Respuesta aceptada

Matt J
Matt J el 19 de Mayo de 2014
Editada: Matt J el 19 de Mayo de 2014
This will store them in slices A(:,:,1), A(:,:,2), ...A(:,:,184) of a 3D array, a much better data organization than A1,...,A184.
for i=122:305
A(:,:,i-121)=DamithCount(S1(i,:),S1(i+1,:));
end
  4 comentarios
Image Analyst
Image Analyst el 20 de Mayo de 2014
How is that 4 elements instead of 184 elements? And why are you giving only two 2-D coordinates instead of four 3-D coordinates?
By the way, you might need to use squeeze().
Matt J
Matt J el 20 de Mayo de 2014
@Damith,
If you mean you want to sum across slices, you would simply do
Asum=sum(A,3)
Note how much harder this would have been if you had stored in separate matrices A1,...A184 !

Iniciar sesión para comentar.

Más respuestas (1)

Sara
Sara el 19 de Mayo de 2014
for i = 122:305
assignin('base',['A',num2str(i)],DamithCount(S1(i,:),S1(i+1,:)));
end
Look up assignin to be sure to use the right workspace.

Categorías

Más información sobre Loops and Conditional Statements 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