MATLAB多个最大值

时间:2015-03-21 11:28:48

标签: matlab max

我遇到MATLAB的最大功能问题。我应该做的是用数字替换数组的最大值。但是,当有多个最大值时,程序会同时更新所有这些值。有没有办法让它一个接一个地做?更换顺序并不重要;它可以任意完成。唯一重要的是让MATLAB逐一完成。

提前谢谢你。

2 个答案:

答案 0 :(得分:1)

max的第二个输出返回一个索引:

a=[5,5];
[b,idx]=max(a)
c=b-2;
a(idx)=c

答案 1 :(得分:0)

当你说超过1个最大值时,我假设你在谈论一个矩阵,max函数对每一列都有效?

您可以执行以下操作:

a = [1 1 2;5 5 7; 3 2 9]

显然,最大值将为9,但如果您执行以下操作:

max(a)

结果将是:

5 5 9

基于每一栏。

以下内容对您有用吗?

max(a(:)) % Maximum value from a matrix (rerranged into 1 column)

您可以对min功能执行相同操作。