2013-07-02 102 views
0

考慮陣列MATLAB多維索引

Arr = [a; b; c; d], 

其中A/B/C/d是大小爲n的所有陣列。

而且我要麼喜歡

index = [1 3 4 2 3 1...] 

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

一個數組,我想擺脫這種

[a; c; d; b; c; a ...] 

我將如何使用索引(邏輯的或者否則)做到這一點。

我想是這樣 編曲(指數)

但顯然沒有做什麼,我想它。

回答

2

對於第一種:

[Arr(index,:)]

對於第二個:

[index,~,~] = find(index); 
[Arr(index,:)] 
+0

嗯,不錯,這個工程。當我嘗試這個時,我一定犯了一個錯誤。 –