2017-06-02 14 views
-1

Ein einfaches Beispiel: Ich habe ein numpy Array ([[5, 4, 2], [1, 8, 8], [4, 5, 6]]) und ein anderes Array ([2, 2, 1]) . Das zweite Array enthält Indizes von Interesse für jede Zeile in dem ersten Array. Ich möchte, dass mein letztes Array einfach ein Vektor-Array ist ([2,8,5]). Ich suche nach etwas in der Art von first_array [second_array], aber es erweist sich als schwer fassbar. Vielen Dank!Wie Index numpy Array?

Antwort

1

Man könnte so etwas wie das folgende versuchen:

>>> arr 
array([[5, 4, 2], 
     [1, 8, 8], 
     [4, 5, 6]]) 
>>> idx 
array([2, 2, 1]) 
>>> arr[np.arange(arr.shape[0]), idx] 
array([2, 8, 5])