函式max函式用于求向量或者矩阵的最大元素,或几个指定值中的最大值。MATLAB等高级程式语言中常用有三种形式:max(A)、max(A,B)、max(A,[],dim)。
基本介绍
- 中文名:MAX函式
- 外文名:MAX Function
- 作用:返回一个最大数值
- 语法:MAX(number1,number2,...)
- 参数:Number1,number2,.
定义及用法
函式max函式用于求向量或者矩阵的最大元素,或几个指定值中的最大值。常用有三种形式:
(1)max(A):输入参数A可以是向量或矩阵,若为向量,则返回该向量中所有元素的最大值;若为矩阵,则返回一个行向量,向量中各个元素分别为矩阵各列元素的最大值。
(2)max(A,B):比较A、B中对应元素的大小,A、B可以是矩阵或向量,要求尺寸相同,返回一个A、B中比较大元素组成的矩阵或向量。另外A、B中也可以有一个为标量,返回与该标量比较后得到的矩阵或向量。
(3)max(A,[],dim):返回A中第dim维的最大值。
使用
如果MAX函式中的参数为错误值或不能转换成数字的文本,将产生错误。如果参数为数组或引用,则只有数组或引用中的数字将被计算。数组或引用中的空白单元格、逻辑值或文本将被忽略。如果逻辑值和文本不能忽略,请使用函式 MAXA 来代替。
如果参数不包含数字,函式 MAX 返回 0。
示例
示例1:如果 A1:A5 包含数字 10、7、9、27 和 2,则:
MAX(A1:A5) 等于 27
MAX(A1:A5,30) 等于 30
示例2:如果A1=71、A2=83、A3=76、A4=49、A5=92、A6=88、A7=96。
则公式“=MAX(A1:A7)”返回96。
示例3:课时计算,一个教学班不足60人的按60人计算,超过60人的,每超过1人,课时增加0.006。
公式为=1+MAX(A1-60,0)*0.006
示例4:用Max函式计算个人所得税,简单一点吧,假定1000元以下不徵税,1000-2000元,超出1000元的部分按1%徵税,2000-5000元,超出2000元的总分按2%徵税,还要加上2000元的额定税(2000-1000)*1%=10元;5000元以上,超出5000元的部分按5%徵税,同时加上2000元的额定税50元。
则公式为=MAX((A1-{1000,2000,5000})*{0.01,0.02,0.05}+{0,10,50},0)
最终简化为=MAX(A1*{0.01,0.02,0.05}-{10,30,200},0)
Matlab函式
一、max函式的几种形式
(1)max(a)
(2)max(a,b)
(3)max(a,[],dim)
(4)[C,I]=max(a)
(5)[C,I]=max(a,[],dim)
二、举例说明函式意思
(1)max(a)
如果a是一个矩阵,比如a=[1,2,3;4,5,6],max(a)的意思就是找出矩阵每列的最大值,
本例中:max(a)=[4,5,6]
(2)max(a,b)
如果a和b都是大于1维的矩阵,那幺要求a和b的行列的维数都要相等,函式的结果是比较a和b中每个元素的大小,比如:
a=[1,2,3;4,5,6] b=[4,5,6;7,8,3]
max(a,b)=[4,5,6;7,8,6]
另外,如果a和b中至少有一个是常数,也是可以的。比如:
a=[1,2,3;4,5,6] b=3 c=5
max(a,b)=[3,3,3;4,5,6]
max(b,c)=5
(3)max(a,[],dim)
这个函式的意思是针对于2维矩阵的,dim是英文字母dimension的缩写,意思是维数。
当dim=1时,比较的a矩阵的列,也就是和max(a)的效果是一样的;当dim=2时,比较的是a矩阵的行。下面举个例子:
a=[1,2,3;4,5,6]max(a)=max(a,[],1)=[4,5,6]比较的第一行和第二行的值
max(a,[],2)=[3,6]
(4)[C,I]=max(a)
C表示的是矩阵a每列的最大值,I表示的是每个最大值对应的下标:
下面举例说明:
还是刚才那个例子:a=[1,2,3;4,5,6][C,I]=max(a)
结果显示的是C=[4,5,6]I=[2,2,2]返回的是最大值对应的行号。
(5)[C,I]=max(a,[],dim)
同理:如果dim=1时,其结果和[c,i]=max(a)是一样的。
当dim=2时,同样上面的矩阵a,我们运行一下:
[c,i]=max(a,[],2)结果是:c=[3,6]i=[3,3]i返回的是矩阵a的列号。