我使用过scipy.spatial.distance.cdist库,但是我无法在循环中生成结果。
有没有办法使用for循环?
感谢。
答案 0 :(得分:0)
from scipy.spatial.distance import cdist
from __future__ import division
import numpy as np
x1 =np.array([(1,3),(2,4),(5,6)])
x2 =[(3,7),(4,8),(6,9)]
cdist(x1,x2,metric='euclidean')
Out[20]:
array([[ 4.47213595, 5.83095189, 7.81024968],
[ 3.16227766, 4.47213595, 6.40312424],
[ 2.23606798, 2.23606798, 3.16227766]])
np.power((1-3)**2 +(3-7)**2,1/2)
Out[23]: 4.4721359549995796