【发布时间】:2021-03-07 07:56:45
【问题描述】:
给定一组向量点,计算总欧几里得长度(所有点之间的欧几里得数之和)的有效方法是什么。我想:
from scipy.spatial.distance import cdist
import numpy as np
a = np.array([[1, 1], [2, 3], [4, 4]])
length = np.diag(cdist(a, a), 1).sum()
还有什么更优雅的吗?
【问题讨论】:
-
你是指总向量长度,还是所有点之间的距离?对于后者,您将计算一个距离矩阵,将下三角形或上三角形设置为零并将其余部分相加。
-
向量总长度 Euc(p2 - p1) + Euc(p3 - p2)
标签: python numpy math euclidean-distance