concatenate
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
God'sSon
el 28 de Mzo. de 2011
I have a for-loop that executes commands and displays the answer for each iteration. Please, can someone tell me how to concatenate all the answers into an array instead of having the results displayed independently for each iteration. cheers.
2 comentarios
Respuesta aceptada
Walter Roberson
el 28 de Mzo. de 2011
Paulo answered the question as you phrased it, but if you know the exact number of results you are producing (or if the maximum number of results is "reasonably close" to the likely number of results), then you are better off pre-allocating memory for the results:
a = zeros(10,1);
for b = 1:10
a(b) = 3*b+5; %for example
end
When you get to thousands of elements, pre-allocating can be much much faster.
2 comentarios
Walter Roberson
el 28 de Mzo. de 2011
b = zeros(size(a));
for i = 1:size(a,1)
b(i,:) = sort(a(i,:))
end
Or more simply,
b = sort(a,2);
Más respuestas (1)
Paulo Silva
el 28 de Mzo. de 2011
a=[]
for b=1:10
a=[a b] %replace the b with the data you want to store per iteration
end
a %result is inside this variable
The code doesn't do any memory pre-allocation!!
0 comentarios
Ver también
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!