MATLAB: Omit nonzero elemnt in cell

omit nonzero elemnt in cell

A={[3,4],[8,9],[1,2],0,0,0};
A(cell2mat(A)==0)={[]};
I used this code, but have error
Error using cat
Dimensions of arrays being concatenated are not consistent.
Error in cell2mat (line 2)
m{n} = cat(2,c{n,:});
Result should be
A={[3,4],[8,9],[1,2],[],[],[]};

Best Answer

  • A(cellfun(@(x)numel(x) == 1 && x == 0,A)) = {[]};