如何使用Python中的l2()函数计算两个向量之间的欧氏距离
发布时间:2023-12-15 12:17:02
在Python中,我们可以使用numpy库中的linalg.norm函数来计算两个向量之间的欧氏距离。以下是使用例子:
首先,我们需要导入numpy库:
import numpy as np
然后,我们可以定义两个向量:
a = np.array([1, 2, 3]) b = np.array([4, 5, 6])
接下来,我们可以使用numpy库中的linalg.norm函数来计算两个向量之间的欧氏距离:
distance = np.linalg.norm(a - b)
完整的代码如下:
import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) distance = np.linalg.norm(a - b) print(distance)
运行上述代码,输出结果为:
5.196152422706632
这个结果表示向量a和向量b之间的欧氏距离为5.196。
需要注意的是,linalg.norm函数默认计算的是向量的L2范数(欧氏范数),所以我们可以直接调用该函数来计算欧氏距离。
另外,如果我们有多组向量需要计算欧氏距离,可以把它们放在一个二维数组中,每一行代表一个向量。比如:
vectors = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) distances = np.linalg.norm(vectors - a, axis=1)
上述代码中,我们计算了向量a与vectors中的每个向量之间的欧氏距离,并将结果存储在distances数组中。其中,axis=1表示按照每行计算欧氏距离。
希望以上的示例能够帮助你理解如何使用Python中的linalg.norm函数计算两个向量之间的欧氏距离。
