我创建了一个能够读取任何mxn矩阵的函数,并给出了整个矩阵的最大值(不仅仅是每列)以及它的索引是什么。
function [ BIGGEST ] = singlemax( x )
[Largest_values row]=max(x)
[biggest_number column] = max(max(x))
end
这个函数给了我所需要的所有信息,但它不是很干净,因为矩阵越大就越乱。
真正的问题区域是打印出最大值所在的行。
Largest_values =
0.7750 0.9122 0.7672 0.9500 0.6871
row =
3 2 3 2 2
biggest_number =
0.9500
column =
4
这是我的打印输出,给定一个随机矩阵作为输入。使用我创建的函数,我无法使用创建的函数读取任何给定数组中的最大值的索引。如果我可以以某种方式关联每列的最大值和相应的行(例如使结果为顶部的列max和底部的行索引的矩阵,都在相同的相应列中)我可以显示绝对的行最大值。
答案 0 :(得分:2)
这是一种方法:
value = max(x(:));
[rowIndex,columnIndex] = ind2sub(size(x),find(x==value));
阅读ind2sub
documentation了解更多详情。
编辑修改,以便找到所有出现的最大值的索引。