我遇到MATLAB的最大功能问题。我应该做的是用数字替换数组的最大值。但是,当有多个最大值时,程序会同时更新所有这些值。有没有办法让它一个接一个地做?更换顺序并不重要;它可以任意完成。唯一重要的是让MATLAB逐一完成。
提前谢谢你。
答案 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
功能执行相同操作。