Combining cells into a single cell

79 views (last 30 days)
Hi there
I have a variable called z in a 9x1 cell. See the picture:
1.png
Is ther anyway to combine the cells to one cell like 360<181x1080?
Because when I run my data, z{:} in my code, I got the error "Expected one output from a curly brace or dot indexing expression, but there were 9 results."
So I think I should combine my 9 cells to one so I have one result?
  5 Comments
Stephen23
Stephen23 on 29 Dec 2018
Edited: Stephen23 on 29 Dec 2018
If z is non-scalar (i.e. has zero or multiple cells) then this syntax will throw an error:
z{:}(:,ny:-1:1);
Do you have a question about the code that you showed us? I notice that the code you show does not use either of the answers that you have been given.
Jonas Damsbo
Jonas Damsbo on 29 Dec 2018
Edited: Jonas Damsbo on 29 Dec 2018
It's here I want a single cell for z. But I think Star Strider have make an answer I can use.

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 28 Dec 2018
See if the cat (link) or cell2mat (link) or both will help solve your problem.
Example —
M{1} = rand(3,4,2);
M{2} = rand(3,4,2);
M{3} = rand(3,4,2);
Mcat = cat(3, M(1),M(2),M(3));
Mdbl = cell2mat(Mcat);
producing:
SizeMdbl = size(Mdbl)
SizeMdbl =
3 4 6
This seems to be the sort of result you want.

More Answers (1)

Stephen23
Stephen23 on 29 Dec 2018
Edited: Stephen23 on 29 Dec 2018

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!