我如何才能找到的最大值及其在数组中的MATLAB指数?(How can I find the max

2019-06-21 07:08发布

假设我有一个数组, a = [2 5 4 7] 什么是返回最大值及其索引功能?

例如,在我的情况下函数应该返回7作为最大值和4作为索引。

Answer 1:

该功能max 。 为了获得第一最大值,你应该做的

[val, idx] = max(a);

val是最大值和idx是它的索引。



Answer 2:

对于一个矩阵,你可以这样做:

[M,I] = max(A(:))

我是A的含有最大的元素的索引(:)。

现在,使用ind2sub功能,提取与最大的元素A的行和列索引。

[I_row, I_col] = ind2sub(size(A),I)

来源: https://www.mathworks.com/help/matlab/ref/max.html



Answer 3:

在二维阵列(矩阵)的情况下,可以使用:

[val, idx] = max(A, [], 2);

的IDX部分将包含含有每行的最大元件的列数。



Answer 4:

您可以使用MAX(),以获得最大的价值。 最大的功能还可以在矢量返回最大值的索引。 为了得到这个,分配呼叫最大到两个元素的矢量,而不是只是一个单一变量的结果。

例如z是你的阵列,

>> [x, y] = max(z)

x =

7

y =

4

在这里,图7是在第4位(指数)的数量最多。



Answer 5:

3D情况

修改穆赫辛的三维阵列的答案:

[M,I] = max (A(:));
[ind1, ind2, ind3] = ind2sub(size(A),I)


文章来源: How can I find the maximum value and its index in array in MATLAB?