Why is it in numpy
possible to multiply a 2x2
matrix by a 1x2
row vector?
import numpy as np
I = np.array([[1.0, 0.0], [0.0, 1.0]])
x = np.array([2.0,3.0])
In: I * x
Out: array([[ 2., 0.], [ 0., 3.]])
Transposing x
does also make no sense. A row vector stays a row vector?
In: x.T
Out: array([ 2., 3.])
From a mathematical point of view the representation is very confusing.