MATLAB: Converting a cell array to a matrix

converting matrix

consider the following example
a={rand(1877958,7); rand(1251972,7)};
i want this to be converted to a matrix. i know that the rows are not the same but the remaining rows can be filled with zeros. how can i do that?
thanks

Best Answer

a={rand(1877958,7); rand(1251972,7)};
n=max(cellfun(@(x) size(x,1),a));
b=cell2mat(cellfun(@(x) [x ;zeros(n-size(x,1),7)],a,'un',0))