请你写一段计算欧式距离的代码,共21个向量,每个向量9个分量
时间: 2024-11-23 19:39:23 浏览: 4
为了计算21个9维向量之间的欧式距离,你可以使用Python编写以下代码,这里假设你有一个二维列表`vectors`,其中每个子列表代表一个向量(长度为9),而`euclidean_distance`函数可以计算任意两个向量之间的欧氏距离:
```python
import math
# 假设 vectors 是一个二维列表,每个子列表包含9个元素表示一个9维向量
vectors = [
[val1_1, val1_2, ..., val1_9],
[val2_1, val2_2, ..., val2_9],
# ...,
[val21_1, val21_2, ..., val21_9]
]
def euclidean_distance(vec1, vec2):
return math.sqrt(sum((a - b) ** 2 for a, b in zip(vec1, vec2)))
# 初始化一个空列表来存储所有向量之间的距离
distances = []
# 遍历所有向量对,计算并添加距离
for i in range(len(vectors)):
for j in range(i+1, len(vectors)):
distances.append(euclidean_distance(vectors[i], vectors[j]))
# 现在distances列表包含了20个(从0到19)向量之间的距离
```
这段代码首先导入了math模块,用于计算平方根。然后它遍历所有的向量对,计算它们之间的欧氏距离,并将结果添加到`distances`列表中。
阅读全文