How to use max function in cell arrays or structures?

I have a cell arrays:
.
.
how do i apply the
max function
to get the maximum 7x2 matrix value across all 3 matrices?
Example
g{1,1} = 1 2 3
2 4 5
5 3 2
g{1,2} = 2 4 1
1 7 2
1 1 2
g{1,3} = 2 2 2
3 1 2
4 8 1
So i will bring the the highest matrix such that
A = 2 4 3
3 7 5
5 8 2

 採用された回答

Jan
Jan 2014 年 11 月 2 日

0 投票

g{1,1} = [1 2 3
2 4 5
5 3 2]
g{1,2} =[ 2 4 1
1 7 2
1 1 2]
g{1,3} =[ 2 2 2
3 1 2
4 8 1]
result = max(cat(3, g{:}), [], 3)

1 件のコメント

hithere
hithere 2014 年 11 月 3 日
hi.
will appreciate if you could explain?
what does the (3, g{:]), [], 3 means?
thanks

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

その他の回答 (1 件)

Azzi Abdelmalek
Azzi Abdelmalek 2014 年 11 月 2 日

1 投票

v={rand(7,2),rand(7,2),rand(7,2)}
a=cell2mat(v)
out=max(a(:))

4 件のコメント

hithere
hithere 2014 年 11 月 2 日
currently is only 3 cells. but i may have another cell arrays that may have 100+ cells.
does that mean i have to put
rand(7,2)
100 times?
or is there a function i can do this?
Thanks for you help!
Azzi Abdelmalek
Azzi Abdelmalek 2014 年 11 月 2 日
編集済み: Azzi Abdelmalek 2014 年 11 月 2 日
No, it was just an example, if v is your cell array just write
a=cell2mat(v)
out=max(a(:))
hithere
hithere 2014 年 11 月 2 日
opps
i mean not only bringing out the highest value. but the highest 7x2 matrix.
g{1,1} = 1 2 3
2 4 5
5 3 2
g{1,2} = 2 4 1
1 7 2
1 1 2
g{1,3} = 2 2 2
3 1 2
4 8 1
So i will bring the the highest matrix such that
A = 2 4 3
3 7 5
5 8 2
Azzi Abdelmalek
Azzi Abdelmalek 2014 年 11 月 2 日
g{1,1} = [1 2 3
2 4 5
5 3 2]
g{1,2} =[ 2 4 1
1 7 2
1 1 2]
g{1,3} =[ 2 2 2
3 1 2
4 8 1]
out=max(reshape(cell2mat(g),3,3,[]),[],3)

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

カテゴリ

ヘルプ センター および File ExchangeMatrices and Arrays についてさらに検索

タグ

質問済み:

2014 年 11 月 2 日

コメント済み:

2014 年 11 月 3 日

Community Treasure Hunt

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

Start Hunting!

Translated by