How can I make multiple cell array sizes the same

2 ビュー (過去 30 日間)
Kafayat Olayinka
Kafayat Olayinka 2019 年 2 月 9 日
コメント済み: madhan ravi 2019 年 2 月 15 日
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 件のコメント
madhan ravi
madhan ravi 2019 年 2 月 9 日
Do you want to pad with trailing zeros?
Kafayat Olayinka
Kafayat Olayinka 2019 年 2 月 9 日
yes

サインインしてコメントする。

採用された回答

madhan ravi
madhan ravi 2019 年 2 月 9 日
A=max(cellfun(@length,time));
Result=cellfun(@(x) [x;zeros(A-numel(x),1)] ,time ,'un',0)
  4 件のコメント
Kafayat Olayinka
Kafayat Olayinka 2019 年 2 月 14 日
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 2019 年 2 月 15 日
A=max(cellfun(@(x)size(x,2),b));
Result=cellfun(@(x) [x zeros(size(x,1),A-size(x,2),1)] ,b ,'un',0)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCell Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by