I've a Matrix e.g.
A(:,:,1) =
1 1 1
2 2 2
3 3 3
A(:,:,2) =
4 4 4
5 5 5
6 6 6
A(:,:,3) =
7 7 7
8 8 8
9 9 9
As a result I want a Matrix "B" that is just 2D in the following shape:
B =
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
7 7 7
8 8 8
9 9 9
I played around with reshape() and permute() or repmat() but couldn't get to the desired result. I solved the problem with a loop but I want to avoid loops!
Thanks!

 채택된 답변

Andrei Bobrov
Andrei Bobrov 2013년 12월 17일
편집: Andrei Bobrov 2013년 12월 17일

0 개 추천

B = reshape(permute(A,[2 1 3]),size(A,2),[])';
or
p = num2cell(A,[1 2]);
B = cat(1,p{:});

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Mathematics에 대해 자세히 알아보기

질문:

Tim
2013년 12월 17일

댓글:

Tim
2013년 12월 17일

Community Treasure Hunt

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

Start Hunting!

Translated by