Stacking matrices in a larger matrix in a loop

I now need to stack matrices formed in a loop on top of each other to create a larger matrix.
For example, I have a loop that goes around 4 times, each time it creates a 9 x 4 matrix. I need to store each iterative matrix in a larger matrix by stacking them one on top of each other, to get a matrix of dimensions 36 x 4.
Any ideas how I can do this?
Cheers
Danny

Answers (1)

out=zeros(36,4) % Pre-allocate
for k=1:4
A=rand(9,4);
out((k-1)*9+1:k*9,:)=A
end

1 Comment

Hi Azzi,
Thanks for this, it makes sense, however I need to perform this operation for a cell of dimension 9 x 4 which includes text and numbers, rather than a matrix.
When I try this I get an error message that says:
The right hand side of this assignment has too few values to satisfy the left hand side.
Any ideas why this may be?

Sign in to comment.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

on 8 Nov 2013

Commented:

on 8 Nov 2013

Community Treasure Hunt

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

Start Hunting!