Введение
В этом лабораторном задании мы исследуем функцию dot() библиотеки Numpy, которая в основном используется для вычисления скалярного произведения двух векторов. Также мы увидим, как эта функция может обрабатывать 2D-массивы как матрицы и выполнять матричное умножение.
Советы по использованию ВМ
После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Разберитесь в синтаксисе numpy.dot()
Синтаксис, необходимый для использования функции dot(), следующий:
numpy.dot(a, b, out=None)
где:
- a - первый параметр. Если "a" комплексное число, то для вычисления скалярного произведения используется его комплексно-сопряженное число.
- b - второй параметр. Если "b" комплексное число, то для вычисления скалярного произведения используется его комплексно-сопряженное число.
- out - аргумент вывода. Если он не используется, то он должен иметь точный тип, который будет возвращен. В противном случае он должен быть C-непрерывным и его
dtypeдолжен бытьdtype, который будет возвращен дляdot(a, b).
Вычислить скалярное произведение скаляров и 1D-массивов
В этом шаге мы будем использовать функцию dot() для вычисления скалярного произведения скаляров и 1D-массивов.
import numpy as np
## Calculate the dot product of scalar values
a = np.dot(8, 4)
print("The dot product of the above given scalar values is: ")
print(a)
## Calculate the dot product of two 1D arrays
vect_a = 4 + 3j
vect_b = 8 + 5j
dot_product = np.dot(vect_a, vect_b)
print("The dot product of two 1D arrays is: ")
print(dot_product)
Выполнить матричное умножение с 2D-массивами
В этом шаге мы будем использовать функцию dot() для выполнения матричного умножения с 2D-массивами.
import numpy as np
a = np.array([[50,100],[12,13]])
print("Matrix a is:")
print(a)
b = np.array([[10,20],[12,21]])
print("Matrix b is:")
print(b)
dot = np.dot(a, b)
print("The dot product of matrices a and b is:")
print(dot)
Обработка ошибок
В этом шаге мы исследуем ValueError, который возникает, когда последняя размерность a не совпадает с предпоследней размерностью b.
import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6]])
b = np.array([[7, 8], [9, 10], [11, 12], [13, 14]])
## Error handling
error = np.dot(a, b)
print(error)
Резюме
В этом практическом занятии мы рассмотрели функцию dot() библиотеки Numpy. Мы узнали, как использовать эту функцию с ее синтаксисом, и значения, возвращаемые функцией, были объяснены с помощью примеров кода. Мы также изучили обработку ошибок функции.