I need help on finding the max & min values of a 3d array.

34 次查看(过去 30 天)
I need help on finding the max & min values of a 3d array.

采纳的回答

Turlough Hughes
Turlough Hughes 2022-2-8
From the documentation for max:
M = max(A,[],'all')
finds the maximum over all elements of A. This syntax is valid for MATLAB® versions R2018b and later.
From the documentation for min
M = min(A,[],'all')
finds the minimum over all elements of A. This syntax is valid for MATLAB® versions R2018b and later.

更多回答(1 个)

John D'Errico
John D'Errico 2022-2-8
编辑:John D'Errico 2022-2-8
min and max are not sufficient? For example:
A = randi(1000,[4 3 2])
A =
A(:,:,1) = 190 179 810 90 414 728 714 631 716 310 324 780 A(:,:,2) = 778 790 612 245 897 12 217 24 776 586 954 442
[maxval,maxind] = max(A,[],'all')
maxval = 954
maxind = 20
So 954 is the largest value. It occurs where? At the 20th element of A. That is, if the elements of A were strung out in a single vector as they are stored in memory. What subscripts does that correspond to?
[irow,icol,ipage] = ind2sub(size(A),maxind)
irow = 4
icol = 2
ipage = 2
4th row. 2nd column, 2nd page.
Min works the same way. Ok, it finds the min, not the max, so not exactly the same way. :)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by