Find the maximum in my array
2 views (last 30 days)
Show older comments
Hello, I have an array of size x,y,z. Now, I would like to locate the maximum within all the values in the array. I want to know the value of x, y and z for this maximum value. Thank you very much in advance for your help!
0 Comments
Accepted Answer
Jan
on 14 Mar 2017
Edited: Jan
on 14 Mar 2017
A = rand(x, y, z);
[maxValue, maxIndex] = max(A(:));
[ix, iy, iz] = ind2sub([x, y, z], maxIndex);
[EDITED] Here "A" was created only as test data only. If you have the array already, you need the size() command to obtain the dimensions:
[maxValue, maxIndex] = max(A(:));
[ix, iy, iz] = ind2sub(size(A), maxIndex);
3 Comments
Jan
on 14 Mar 2017
See [EDITED]. Not that "A(:)" is a vector, while "A(:, :, :)" is not and the shown method does not work.
More Answers (1)
Auryn_
on 14 Mar 2017
2 Comments
Jan
on 14 Mar 2017
Please open a new thread for a new question to avoid confusing the readers. Thanks.
The answer might be something like:
Index = find(0 < A & A < 1);
[ix, iy, iz] = ind2sub(size(A), Index)
Sigh, now I've answered already. So obviously I'm the first person who is confused ;-)
See Also
Categories
Find more on Multidimensional Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!