How can I make multiple cell array sizes the same

1 vue (au cours des 30 derniers jours)
Kafayat Olayinka
Kafayat Olayinka le 9 Fév 2019
Commenté : madhan ravi le 15 Fév 2019
I'm working with a cell array,time which has 1by4 cell. i.e time= 1 by 4 cell arrays. Each cell has differnt sizes. i.e
time{1,1}=2800 by 1
time{1,2}=1800 by 1
time{1,3}= 3099 by 1
time{1,4}= 2872 by 1
How can I make all time {1,i} size the same. i.e
time{1,i}= 3099 by 1
  2 commentaires
madhan ravi
madhan ravi le 9 Fév 2019
Do you want to pad with trailing zeros?
Kafayat Olayinka
Kafayat Olayinka le 9 Fév 2019
yes

Connectez-vous pour commenter.

Réponse acceptée

madhan ravi
madhan ravi le 9 Fév 2019
A=max(cellfun(@length,time));
Result=cellfun(@(x) [x;zeros(A-numel(x),1)] ,time ,'un',0)
  4 commentaires
Kafayat Olayinka
Kafayat Olayinka le 14 Fév 2019
what if I want
b{1,1}=667 by 2800 (where b is a height by time array)
b{2,1}=667 by 1800
b{3,1}= 667 by 3099
b{4,1}= 667 by 2872
How can I make all b {i,1} size the same. i.e
b{i,1}= 667 by 3099
madhan ravi
madhan ravi le 15 Fév 2019
A=max(cellfun(@(x)size(x,2),b));
Result=cellfun(@(x) [x zeros(size(x,1),A-size(x,2),1)] ,b ,'un',0)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Cell Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by