How to merge cell arrays with different dimensions?
Afficher commentaires plus anciens
I have two cell arrays. The first one (A) has 1x14 cells, and the second (B) has 1x7 cells. I would like to create an array (or a table) that would consists of two arrays in vertical merging. The commands e.g. table(A,B) etc. shows me error about the dimensions of each one.
Could you please help me ?
2 commentaires
Walter Roberson
le 2 Fév 2022
What would be the expected size and datatype of the "two arrays in vertical merging" ?
Are you looking for an output table with 14 variables, with the first row being the content of A, and the first 7 entries of the second row being the content of B, and with the second 7 entries of the second row being some kind of padding (such as empty cells) ?
Ivan Mich
le 2 Fév 2022
Réponse acceptée
Plus de réponses (1)
Walter Roberson
le 2 Fév 2022
T = table(A{:});
temp = cell(1, length(A));
temp(1:length(B)) = B;
T = [T; temp];
Note that using [] between a table and a cell array has the effect of inserting the content of the cell array as additional rows in the table.
5 commentaires
Ivan Mich
le 2 Fév 2022
Walter Roberson
le 2 Fév 2022
temp = cell(2, length(A));
temp(1,:) = A;
temp(2,1:length(B)) = B;
T = cell2table(temp);
Ivan Mich
le 3 Fév 2022
Ivan Mich
le 5 Nov 2022
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
