フィルターのクリア

Find largest array size in cell of many arrays

43 ビュー (過去 30 日間)
RuiQi
RuiQi 2016 年 6 月 17 日
コメント済み: Image Analyst 2020 年 1 月 17 日
I have a cell each cell storing a different sized array. How do i find the largest width and height of all the arrays ?
I tried
size(test{:}(:,1,1))
test is my cell. so meaning for all test, find the size of (:,1,1). But it is wrong of coz so help me thanks.
Like
cell{1} = 10x10 uint8
cell{2} = 10x11
cell{3} = 5x99
so
min_size_of_cell_array(cell{:}) = 5,10
like that
  1 件のコメント
Stephen23
Stephen23 2016 年 6 月 17 日
Have a look at cellfun: it has some handy features that you can use:
>> C{1} = NaN(10,10);
>> C{2} = zeros(10,11);
>> C{3} = ones(5,99);
>> cellfun('size',C,1) % rows
ans =
10 10 5
>> cellfun('size',C,2) % columns
ans =
10 11 99

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

採用された回答

Andrei Bobrov
Andrei Bobrov 2016 年 6 月 17 日
C = arrayfun(@(x)rand(randi([1 20],1,2)),(1:8)','un',0);% example
[s,d] = cellfun(@size,C);
out = max([s,d]);
  2 件のコメント
RuiQi
RuiQi 2016 年 6 月 17 日
Thanks ! The cellfun is really useful !
Avik Mahata
Avik Mahata 2019 年 1 月 13 日
How do I convert the maximum cellarray to matrix after identifying the particular cell array?

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

その他の回答 (1 件)

shashmitha lakshmi
shashmitha lakshmi 2020 年 1 月 16 日
How to find the maxmimum length array between two arrays
  1 件のコメント
Image Analyst
Image Analyst 2020 年 1 月 17 日
Try this:
% Create our data, a cell array of vectors of random lengths.
for k = 1 : 100
thisLength = randi(50); % Anywhere from 1 to 50.
ca{k} = rand(1, thisLength); % Create row vector of this length.
end
% Now that data has been created,
% find the lengths of all the elements.
allLengths = cellfun(@length, ca)
% Now find the longest vector between element 15 and 35 (for example)
maxLength = max(allLengths(15:35))

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

カテゴリ

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