merge multiply cell together

Hi guys: I have two cells as follow:
C1={[1:10], [2; 4; 6], []};
C2={[],[],[2;3];
These two cell has same length and opposite void and valid elements, I want to put the elements in one cell , let's say C3={[1:10], [2; 4; 6],2;3]} How can I do that? Thank you very much!

 Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 30 Aug 2013
Edited: Azzi Abdelmalek on 30 Aug 2013
C3=horzcat(C1,C2);
C3(cellfun('isempty',C3))=[]

1 Comment

Equivalent, but perhaps slightly faster for huge cells:
index = cellfun('isempty', C1);
C3 = cat(2, C1(~index), C2(index));

Sign in to comment.

More Answers (0)

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!