Матричное умножение
Для осуществления матричного умножения двумерных массивов используется функция numpy.matmul()
. Работает она следующим образом:
- В случае двумерных массивов производится обычное матричное умножение.
- Если размерность больше 2, то умножение интерпретируется как объединение двух массивов.
- Если один из массивов одномерный, то его размерность повышается до двумерного, а затем производится матричное умножение.
numpy.matmul(x, y, out=None)
В этом синтаксисе x, y
— входящие массивы (скалярные величины недопустимы), а out
— опциональный параметр (обычно тип выходящих данных задается как ndarray
).
Пример:
Итак, умножим две матрицы при помощи numpy.matmul().
### Matmul: matruc product of two arrays h = [[1,2],[3,4]] i = [[5,6],[7,8]] ### 1*5+2*7 = 19 np.matmul(h, i)
Output:
array([[19, 22], [43, 50]])
Определитель
И последнее, но важное. Если вам нужно вычислить определитель матрицы, то вы можете воспользоваться функцией np.linalg.det()
. Обратите внимание, что в этой функции проверятся размерность (прим. переводчика: определитель можно вычислить только у квадратной матрицы).
## Determinant 2*2 matrix 5*8-7*6 np.linalg.det(i)
Output:
-2.000000000000005