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

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

Accepted Answer

Birdman
Birdman on 19 Jan 2018
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
  3 Comments

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!