How can i change a cell to an array?

9 views (last 30 days)
Shannon Lim
Shannon Lim on 10 Mar 2021
Commented: Shannon Lim on 10 Mar 2021
I have a 1000x1 cell consisting of 20x20x20 complex doubles.
How do i convert it such that its 1000x20x20x20?
Tried using cell2mat but ended up with 20000x20x20x20.

Accepted Answer

KSSV
KSSV on 10 Mar 2021
C{1} = rand(2,2,2) ;
C{2} = rand(2,2,2) ;
C{3} = rand(2,2,2) ;
C{4} = rand(2,2,2) ;
A = cat(4,C{:}) ;
C{1}
ans =
ans(:,:,1) = 0.0684 0.6500 0.4594 0.9694 ans(:,:,2) = 0.7593 0.4700 0.6565 0.9954
A(:,:,:,1)
ans =
ans(:,:,1) = 0.0684 0.6500 0.4594 0.9694 ans(:,:,2) = 0.7593 0.4700 0.6565 0.9954
  3 Comments
KSSV
KSSV on 10 Mar 2021
If C is you cell array of dimension 1x1000 with each cell 20*20*20, you can use the shown code and get A as 20*20*20*1000

Sign in to comment.

More Answers (0)

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!