MATLAB: How to make each matrix in a cell of equal size by adding NaN

cellmatrixnan

How may I make each matrix in a cell of equal size by adding NaN? My data is a 1000×1 cell containing 'nx2' sized matrices and looks like this:
A =
[8x2 double]
[6x2 double]
[9x2 double]
[6x2 double]
[7x2 double]
...

Best Answer

An approach:
A={rand(8,2);rand(6,2);rand(9,2);rand(6,2);rand(7,2)};
sizesRow=cellfun(@(x) size(x,1),A);
addition=max(sizesRow)-sizesRow;
for i=1:size(A,1)
A{i}(sizesRow(i)+1:sizesRow(i)+addition(i),:)=NaN;
end