import numpy as np
inx = np.array([1, 2, 3])
dataset = np.array([[4, 5, 6], [7, 8, 9]])
dist = np.sum((inx - dataset)**2, axis=1)**0.5
print(dist)
运行结果
[ 5.19615242 10.39230485]
import numpy as np
inx = np.array([1, 2, 3])
dataset = np.array([[4, 5, 6], [7, 8, 9]])
dist = np.sum((inx - dataset)**2, axis=1)**0.5
print(dist)
运行结果
[ 5.19615242 10.39230485]
这段代码计算了inx数组中每个元素与dataset数组中每个元素之间的欧几里得距离。具体的计算过程如下:
首先计算inx与dataset之间的差值:
[[-3, -3, -3],
[-6, -6, -6]]
然后对差值取平方:
[[ 9, 9, 9],
[36, 36, 36]]
接着计算每个差值向量的元素和,并将结果存储在一个一维数组中:
[27, 108]
对每个和值取平方根,得到该点与dataset中每个点之间的欧几里得距离:
[ 5.19615242, 10.39230485]
因此,输出结果为[ 5.19615242, 10.39230485]。