Python欧式距离代码
时间: 2023-08-31 10:39:39 浏览: 166
### 回答1:
可以使用以下代码计算两个向量之间的欧式距离:
```python
import numpy as np
def euclidean_distance(x, y):
return np.sqrt(np.sum((x - y) ** 2))
# 示例
x = np.array([1, 2, 3])
y = np.array([4, 5, 6])
print(euclidean_distance(x, y)) # 输出:5.196152422706632
```
这段代码使用了 NumPy 库来进行向量运算,计算出两个向量之间的欧式距离。
### 回答2:
欧式距离是一种常用的距离度量方式,用于计算向量空间中两个点之间的距离。在Python中,可以通过以下代码来计算欧式距离:
```python
import math
def euclidean_distance(p1, p2):
# 确保传入的两个点具有相同的维数
assert len(p1) == len(p2), "维数不匹配"
# 初始化距离为0
distance = 0
# 逐个计算每个维度上的差值的平方,并累加到距离中
for i in range(len(p1)):
distance += (p1[i] - p2[i]) ** 2
# 对距离进行开方,得到欧氏距离
distance = math.sqrt(distance)
return distance
# 测试代码
point1 = [1, 2, 3]
point2 = [4, 5, 6]
distance = euclidean_distance(point1, point2)
print("欧氏距离为:", distance)
```
以上代码定义了一个`euclidean_distance`函数,接受两个点作为参数。在函数内部,首先进行维数的匹配检查,然后依次计算每个维度上的差值的平方,并累加到距离变量中。最后,对距离进行开方操作,得到欧氏距离,并返回该距离。
在测试代码中,我们创建了两个三维点`[1, 2, 3]`和`[4, 5, 6]`,调用`euclidean_distance`函数计算它们之间的欧氏距离,并将结果打印出来。
阅读全文