Я смущен тем, чтоформа вектора в NumPy
a = np.array([1,2])
a.T == a # True
, а также
I = np.array([[1,0],[0,1]])
np.dot(a, I) = np.dot(I, a) # both sides work
является форма вектора (или массива), в этом случае 1 * 2 или 2 * 1 ?
Я смущен тем, чтоформа вектора в NumPy
a = np.array([1,2])
a.T == a # True
, а также
I = np.array([[1,0],[0,1]])
np.dot(a, I) = np.dot(I, a) # both sides work
является форма вектора (или массива), в этом случае 1 * 2 или 2 * 1 ?
Вектор a
имеет форму 2
, а не 1 × 2
ни 2 × 1
(это не является ни вектор-столбец, ни строка), поэтому транспонирование не имеет никакого эффекта, так как transposition by default reverses the ordering of the axes.
Numpy является very lenient about what kinds of arrays can be multiplied using dot
:
это сумма произведение по последней оси
a
и второго до последнего изb
Вы пробовали делать np.shape (а)? – Malonge