Numpy-Matrix-Vektor-Multiplikation [Duplikat]

Diese Frage hat hier bereits eine Antwort:

Wie unterscheidet sich die Multiplikation für NumPy Matrix- und Array-Klassen? 7 Antworten

Wenn ich zwei numpy Arrays mit den Größen (n x n) * (n x 1) multipliziere, erhalte ich eine Größenmatrix (n x n). Nach normalen Matrixmultiplikationsregeln wird ein (n x 1) -Vektor erwartet, aber ich kann einfach keine Informationen darüber finden, wie dies in Pythons Numpy-Modul erfolgt.

Die Sache ist, dass ich es nicht manuell implementieren möchte, um die Geschwindigkeit des Programms zu erhalten.

Beispielcode ist unten gezeigt:

a = np.array([[ 5, 1 ,3], [ 1, 1 ,1], [ 1, 2 ,1]])
b = np.array([1, 2, 3])

print a*b
   >>
   [[5 2 9]
   [1 2 3]
   [1 4 3]]

Was ich will ist:

print a*b
   >>
   [16 6 8]

Antworten auf die Frage(1)

Ihre Antwort auf die Frage