Python 中计算两个向量的点积


要返回两个向量的点积,请在 Python 中使用 numpy.vdot() 方法。vdot(a, b) 函数处理复数的方式与 dot(a, b) 不同。如果第一个参数是复数,则在计算点积时使用第一个参数的复共轭。vdot 处理多维数组的方式与 dot 不同:它不会执行矩阵乘积,而是首先将输入参数展平为一维向量。因此,它应该只用于向量。

该方法返回 a 和 b 的点积。根据 a 和 b 的类型,可以是 int、float 或 complex。第一个参数是 a。如果 a 是复数,则在计算点积之前取其复共轭。b 是点积的第二个参数。

步骤

首先,导入所需的库:

import numpy as np

使用 array() 方法创建两个 NumPy 一维数组:

arr1 = np.array([2+3j,5+6j])
arr2 = np.array([9+10j,11+12j])

显示数组:

print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

检查两个数组的维度:

print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

检查两个数组的形状:

print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

要在 Python 中返回两个向量的点积,请使用 numpy.vdot() 方法:

print("\nResult...\n",np.vdot(arr1, arr2))

示例

import numpy as np

# Creating two numpy One-Dimensional array using the array() method
arr1 = np.array([2+3j,5+6j])
arr2 = np.array([9+10j,11+12j])

# Display the arrays
print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

# Check the Dimensions of both the arrays
print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

# Check the Shape of both the arrays
print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

# To return the dot product of two vectors, use the numpy.vdot() method in Python.
print("\nResult...\n",np.vdot(arr1, arr2))

输出

Array1...
[2.+3.j 5.+6.j]

Array2...
[ 9.+10.j 11.+12.j]

Dimensions of Array1...
1

Dimensions of Array2...
1

Shape of Array1...
(2,)

Shape of Array2...
(2,)

Result...
(175-13j)

更新于:2022年3月1日

2K+ 次浏览

启动您的职业生涯

完成课程获得认证

开始
广告