'Merge' two cell arrays into one single cell array (NOT concatenation!)

2 次查看(过去 30 天)
Dear All,
I am not familiar with cell array and have one simple question as follows-
There are two 1x2 cell arrays, for c1={1;2 5} , and c2= {3;4 6;7;8;9;10}.
Now I need to create a new 1x2 cell array c3 that = {1;2;3;4 5;6;7;8;9;10}.
I've tried concatenate but it returned as a 2x2 cell array
My code c3=cat(1,c1,c2)
Please let me know how to do this correctly, any advice would be appreciated!
K

采纳的回答

Stephen23
Stephen23 2021-8-8
c1 = {[1;2],5}
c1 = 1×2 cell array
{2×1 double} {[5]}
c2 = {[3;4],[6;7;8;9;10]}
c2 = 1×2 cell array
{2×1 double} {5×1 double}
out = cellfun(@vertcat,c1,c2,'uni',0)
out = 1×2 cell array
{4×1 double} {6×1 double}
celldisp(out)
out{1} = 1 2 3 4 out{2} = 5 6 7 8 9 10

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by