使用列表List作为样本点表示的欧氏距离计算方法:

import math
# 计算两点之间的距离
def eucliDist(A,B):
    return math.sqrt(sum([(a - b)**2 for (a,b) in zip(A,B)]))
X = [1,2,3,4]
Y = [0,1,2,3]
print(eucliDist(X,Y))

使用np.array作为样本点表示的欧氏距离计算方法:

import numpy as np

# 计算两点之间的距离
def eucliDist(A,B):
    return np.sqrt(sum(np.power((A - B), 2)))
    # return math.sqrt(sum([(a - b)**2 for (a,b) in zip(A,B)]))
X = np.array([1,2,3,4])
Y = np.array([0,1,2,3])
print(eucliDist(X,Y))

以上两种方法比使用python库的技巧,方便简洁!

np.linalg.norm(A-B)

第三种写法需要A和B是ndarray

推荐内容
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐