我刚开始使用matlab,需要快速完成这个程序,所以我没有时间去浏览所有的教程。MATLAB:什么是[Y,I] = max(AS,[],2);?
有人可以熟悉它,请解释下面的声明正在做什么。
[Y,I]=max(AS,[],2);
的[]
和2
是什么主要是困惑我之间AS
。是最大值分配给Y
和I
?
我刚开始使用matlab,需要快速完成这个程序,所以我没有时间去浏览所有的教程。MATLAB:什么是[Y,I] = max(AS,[],2);?
有人可以熟悉它,请解释下面的声明正在做什么。
[Y,I]=max(AS,[],2);
的[]
和2
是什么主要是困惑我之间AS
。是最大值分配给Y
和I
?
C = max(A,[],dim)
返回沿着甲标量暗淡指定的尺寸的最大元素。例如,max(A,[],1)
沿A
的第一维(行)产生最大值。
此外,[C, I] = max(...)
形式为您提供了最大值C
,他们指数(即位置)在I
。
你为什么不尝试一个这样的例子?输入到MATLAB中,看看你得到了什么。它应该让事情变得更容易看到。
m = [[1;6;2] [5;8;0] [9;3;5]]
max(m,[],2)
该函数取AS和沿AS的第二维生成最大值。它返回最大值'Y'和'I'的索引。
C = max(A,[],dim)
返回沿着由标量dim
指定的A
尺寸的最大元素。例如,max(A,[],1)
沿A
的第一维(行)产生最大值。
[C,I] = max(...)
找到最大值A
的索引,并将它们返回到输出向量I
。如果有多个相同的最大值,则返回找到的第一个索引。
我认为[]
只是为了区别于max(A,B)
。
AS是矩阵。
这将返回AS的最大元素在其第二尺寸(即其列)
注意matlab约定中明显的皱纹;有一些内建的功能,这有这样的签名:
xs = sum(x,dim)
这“沿着”的DIM维工作。最大和最小是oddbal例外:
xm = max(x,dim); %this is probably a silent semantical error!
xm = max(x,[],dim); %this is probably what you want
有时我真希望有MATLAB二进制max和倒塌最大,而不是推搡他们到同样的功能...
您可能必须通过座椅学习你的裤子 - 我们都会时不时的 - 但我强烈建议你最低限度阅读你正在使用的功能的参考手册。只需输入'help myfunction',你就可以得到一个关于你的功能的第三十二章引子。 – Kena 2009-10-27 21:14:54