How to pad cell w/ multiple arrays with zeros

16 views (last 30 days)
Hello,
I have a cell array: myCell = {1,4}, each array inside the cell can be:
ex:
1500X1
2000X1
2048X1
3400X1
I would like to pad all arrays that dont equal max array length(3400) with zeros and plot. Im trying to use cellfun but am having trouble padding.I can find the max using cellfun easy with:
[s,d] = cellfun(@size,myCell);
outputMax = max([s,d]);
But am having trouble figuring out how to use cellfun ,now that I know what the MAX length is of my arrays....I tried padarray but failed miserably.Any ideas?
Thanks

Accepted Answer

madhan ravi
madhan ravi on 27 Jul 2020
Edited: madhan ravi on 27 Jul 2020
M = max(cellfun(@length, myCell));
Wanted = cellfun(@(x) [x; zeros(M - numel(x), 1)], myCell, 'un', 0)
  4 Comments
m j
m j on 28 Jul 2020
You are correct,I accepted answer and asked question elsewhere.Thanks!

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!