How to merge cell arrays with different dimensions?

3 views (last 30 days)
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 Comments
Walter Roberson
Walter Roberson on 2 Feb 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) ?

Sign in to comment.

Accepted Answer

Ivan Mich
Ivan Mich on 5 Nov 2022
system('copy file1.txt+file2.txt+file3 OUTPUT_Merged_file.txt');
This is the solution

More Answers (1)

Walter Roberson
Walter Roberson on 2 Feb 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 Comments
Ivan Mich
Ivan Mich on 3 Feb 2022
let me explain, I mean I would like to have one output file with:
  • the first line of A (1x14)
  • the second line of B (1x7)
  • the third line of data (19x3)
These three bulltes must be merged vertically, in the order I mentioned above, in the final aoutput file.
could you please help me to make it?
Ivan Mich
Ivan Mich on 5 Nov 2022
system('copy file1.txt+file2.txt+file3 OUTPUT_Merged_file.txt');
This is the solution

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!