Find the maximum in my array

3 ビュー (過去 30 日間)
Auryn_
Auryn_ 2017 年 3 月 14 日
コメント済み: Auryn_ 2017 年 3 月 14 日
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!

採用された回答

Jan
Jan 2017 年 3 月 14 日
編集済み: Jan 2017 年 3 月 14 日
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 件のコメント
Jan
Jan 2017 年 3 月 14 日
See [EDITED]. Not that "A(:)" is a vector, while "A(:, :, :)" is not and the shown method does not work.
Auryn_
Auryn_ 2017 年 3 月 14 日
Thanks!

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

その他の回答 (1 件)

Auryn_
Auryn_ 2017 年 3 月 14 日
Hi again,
I have an additional question. Can I use something similar to find the values within a range (e.g. between 0 and 1)? Thanks in advance.
  2 件のコメント
Jan
Jan 2017 年 3 月 14 日
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 ;-)
Auryn_
Auryn_ 2017 年 3 月 14 日
Thanks, and sorry for the confusion :)

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

カテゴリ

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

Community Treasure Hunt

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

Start Hunting!

Translated by