【numpy计算欧几何距离】多点至单点的距离
程序员文章站
2022-04-02 09:39:13
...
数据表示
下面代码中的数组,第一列是表示点的ID号,第二、三列分别表示x和y坐标。
方式一
import numpy as np
a = np.array([[0, 1, 2], [1, 2, 3], [2, 3, 4]])
b = np.array([[1, 2, 3]])
d_arr = np.sqrt(np.power(a[:, 1] - b[:, 1], 2) + np.power(a[:, 2] - b[:, 2], 2))
print(d_arr)
方式二
import numpy as np
from numpy import linalg as LA
a = np.array([[0, 1, 2], [1, 2, 3], [2, 3, 4]])
b = np.array([[1, 2, 3]])
print(LA.norm(np.array([a[:, 1] - b[:, 1], a[:, 2] - b[:, 2]]), axis=0))
效率
方式二快于方式一
如果你认为对你有用,或者想要与我有更多交流,关注我的微信公众号支持我一下吧!~
上一篇: Revit二次开发-2