Метод dot
Метод dot класса ndarray вычисляет скалярное произведение двух массивов. В зависимости от размерности входных массивов результат может быть скаляром (для одномерных массивов), одномерным массивом (для матрично-векторного умножения) или двумерным массивом (для матричного умножения). Метод принимает один обязательный параметр - второй массив, а также необязательные параметры для управления вычислениями.
Синтаксис
arr1.dot(arr2, out=None)
Пример
Давайте вычислим скалярное произведение двух одномерных массивов:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
res = arr1.dot(arr2)
print(res)
Результат выполнения кода:
32
Пример
Выполним умножение двумерной матрицы на одномерный вектор:
import numpy as np
matrix = np.array([[1, 2], [3, 4]])
vector = np.array([5, 6])
res = matrix.dot(vector)
print(res)
Результат выполнения кода:
[17 39]
Пример
Выполним матричное произведение двух двумерных массивов:
import numpy as np
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])
res = arr1.dot(arr2)
print(res)
Результат выполнения кода:
[[19 22]
[43 50]]
Пример
Используем параметр out для сохранения результата в заранее созданном массиве:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
out_arr = np.array([0])
arr1.dot(arr2, out=out_arr)
print(out_arr)
Результат выполнения кода:
[32]