2015-11-18 50 views
-2

有沒有一種方法在numpy中使用另一個數組索引數組。例如,如果我有這個數組:與其他數組索引數組(不使用for循環)

a = [1.0, 2.0, 3.0, 4.0] 

和此陣列

b = [3, 1, 1, 2] 

會不會有編入索引使用B的方式,使得所述新的數組的第0個成分是a的第三成分,新數組的第一個組件是a的第一個組件,依此類推。

換句話說結束了這個

[4.0, 2.0, 2.0, 3.0] 

我知道這很容易用一個for循環做的,但我明確希望避免使用一個,因爲我做的有較高維數組和此過程結果是該計劃大幅放緩。

+1

你試過a [b]嗎?因爲它確實如此。 –

+0

如果你明確指定了numpy數組,那麼問題就會變得更加清楚:'a = numpy.array([1.0,2.0,3.0,4.0])' –

回答

3

這實際上只是a[b]。 (因爲StackOverflow需要30個字符,所以我會發佈一個演示,但是我不能從這裏運行一個,我不想僞造輸出。)

+0

我對高維數組嘗試了幾次,最後得到了更多的軸然後我開始並假定它只是製作了一組數組。 – user5539410