Transform a cell of arrays to a table?

1 visualizzazione (ultimi 30 giorni)
Iris Li
Iris Li il 15 Mag 2018
Commentato: Iris Li il 15 Mag 2018
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 Commenti
Iris Li
Iris Li il 15 Mag 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 il 15 Mag 2018
Sorry I modified the codes in this question just now. Hopefully you'll find it more clear haha.

Accedi per commentare.

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 15 Mag 2018
B = [A{:}]'
  2 Commenti
Guillaume
Guillaume il 15 Mag 2018
Modificato: Guillaume il 15 Mag 2018
or
B = vertcat(A{:});
Saves on a ctranspose.
Iris Li
Iris Li il 15 Mag 2018
Thank you very much!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Cell Arrays in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by