@delphine_bartoletti
Вы можете использовать функцию numpy.dot
для перемножения двух матриц. Например:
1 2 3 4 5 6 7 8 |
import numpy as np matrix_a = np.array([[1, 2], [3, 4]]) matrix_b = np.array([[5, 6], [7, 8]]) matrix_c = np.dot(matrix_a, matrix_b) print(matrix_c) |
Выведет:
1 2 |
[[19 22] [43 50]] |
Обратите внимание, что матрицы matrix_a
и matrix_b
должны быть согласованы, то есть число столбцов матрицы matrix_a
должно совпадать с числом строк матрицы matrix_b
. В приведенном примере это 2. Результирующая матрица matrix_c
будет иметь размерность 2x2
, так как число строк в matrix_c
равно числу строк в matrix_a
, а число столбцов в matrix_c
равно числу столбцов в matrix_b
.
Если вы хотите перемножить матрицы в другом порядке, можете использовать функцию numpy.dot
с аргументом axes
, чтобы указать, какие оси следует использовать для перемножения. Например:
@delphine_bartoletti
1 2 3 4 5 6 7 8
import numpy as np
matrix_a = np.array([[1, 2], [3, 4]]) matrix_b = np.array([[5, 6], [7, 8]])
matrix_c = np.dot(matrix_b, matrix_a)
print(matrix_c)
Выведет:
1 2
[[23 34] [31 46]]
В этом примере мы перемножаем matrix_b на matrix_a, и результат будет иметь размерность 2x2.
Также можно использовать оператор @ для перемножения матриц в numpy:
1 2 3 4 5 6 7 8
import numpy as np
matrix_a = np.array([[1, 2], [3, 4]]) matrix_b = np.array([[5, 6], [7, 8]])
matrix_c = matrix_a @ matrix_b
print(matrix_c)
Выведет:
1 2
[[19 22] [43 50]]
Оба метода - использование функции numpy.dot и оператора @ - являются эквивалентными и дают одинаковый результат.