2012-05-22 67 views
0

下面幾行:眼矩陣應用

a=[1;2;10;9] 
eye(10)(a,:) 

回報:

[1 0 0 0 0 0 0 0 0 0 
0 1 0 0 0 0 0 0 0 0 
0 0 0 0 0 0 0 0 0 1 
0 0 0 0 0 0 0 0 1 0] 

它是如何工作的?爲什麼它會得到價值?

回答

5

它從10x10單位矩陣中選擇行1,2,10和9以及所有列。

沒有像下面這樣的中間步驟,雖然給我一個語法錯誤。你是跳過這一步還是在Matlab版本之間做了這種改變的語法?

a=[1;2;10;9]; 
eye(10)(a,:) 

息率??? Error:()-indexing must appear last in an index expression.

這確實給您發佈的矩陣:

e = eye(10); 
e(a,:) 
+2

八度網上讓你做它沒有中間步驟......沒有MATLAB這裏雖然測試。 – tmpearce

+0

@tmpearce:有趣的區別。但至少矩陣切片/尋址應該是一樣的。 – Junuxx