Transform a cell of arrays to a table?

1 view (last 30 days)
How could I get B from A? Thanks!!! The cell2table command couldn't because the element in A is {[1;2;3]}, instead of {[1]},{[2]},{[3]}, which would make it a bit more complicated. I tried cell2table, cell2mat, struct2table...
A = {[1;2;3];[1;2;3];[1;2;3];[1;2;3]}
B = [1,2,3;1,2,3;1,2,3;1,2,3]
A =
4×1 cell array
[3×1 double]
[3×1 double]
[3×1 double]
[3×1 double]
B =
1 2 3
1 2 3
1 2 3
1 2 3
  3 Comments
Iris Li
Iris Li on 15 May 2018
I actually have the following function. Para is like A I mentioned in this question, a 4*1 cell. What I want to get is a 4*3 table.
G = findgroups(m,n);
func = @(x,y,z){[z,z.*x(:),z.*x(:).^2]\(z.*y(:))};
Para = splitapply(func,x,y,z,G);
Iris Li
Iris Li on 15 May 2018
Sorry I modified the codes in this question just now. Hopefully you'll find it more clear haha.

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 15 May 2018
B = [A{:}]'
  2 Comments
Guillaume
Guillaume on 15 May 2018
Edited: Guillaume on 15 May 2018
or
B = vertcat(A{:});
Saves on a ctranspose.

Sign in to comment.

More Answers (0)

Categories

Find more on Cell Arrays 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!