我剛開始使用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