Wie zum extrahieren von Elementen aus einer matrix mit einem Vektor von Indizes mithilfe von numpy?

Angenommen ich habe eine matrix a der Ordnung, mxn und ein Vektor der mx1. Ich möchte zu extrahieren Elemente aus jeder Zeile der matrix A, indem Sie mit den Elementen der Vektoren als Versatz in jeder Reihe.

Beispielsweise

A = [[3, 0, 0, 8, 3],
    [9, 3, 2, 2, 6],
    [5, 5, 4, 2, 8],
    [3, 8, 7, 1, 2],
    [3, 9, 1, 5, 5]]

und ein Vektor

y = [4,2,1,3,2]

Was ich erreichen möchte ist, dass ich will, einen Weg zu extrahieren Sie die Elemente derart, dass jedes element des Vektor-Indizes ein element in der entsprechenden Zeile von A, dh, die Umsetzung

for i in xrange(y):
    A[i,y[i]] = #perform operations here

ohne die Verwendung von expliziten Schlaufen.

Die erwartete Ausgabe ist,

[3,2,5,1,1]

Bin ich mit Python und numpy-Bibliothek.

Danke für die Hilfe!

  • Könnten Sie auch hinzufügen, die erwartete Ausgabe?
Schreibe einen Kommentar