距离计算

以下内容转自:https://blog.csdn.net/kancy110/article/details/75675574?utm_source=blogxgwz4

scipy.spatial.distance.cdist(XA, XB, metric='euclidean', p=None, V=None, VI=None, w=None),该函数用于计算两个输入集合的距离,通过metric参数指定计算距离的不同方式得到不同的距离度量值。

metric的取值如下:

 chebyshev:切比雪夫距离
 correlation:相关系数
 cosine:余弦夹角
 euclidean:欧式距离
 hamming:汉明距离
 jaccard:杰卡德相似系数
 mahalanobis:马氏距离
 minkowski:闵可夫斯基距离
 seuclidean:标准化欧式距离

from scipy.spatial import distance
import numpy as np

x1 =np.array([(1,3),(2,4),(5,6)])
x2 =np.array([(3,7),(4,8),(6,9)])
x3 =(1,3)
x4 =(3,7)

#cdist中metric默认参数是欧式距离'euclidean'
y1=distance.cdist(x1,x2,metric='euclidean')
y2=distance.cdist(x1,x2)
#distance.euclidean()只能输入一唯向量,输出结果是float
y3=distance.euclidean(x3,x4) 
print('y1:',y1,'type:',type(y1),'y2:',y2,'type:',type(y2),'y3:',y3,'type:',type(y3))

'''
Out[1]:
y1: [[4.47213595 5.83095189 7.81024968]
 [3.16227766 4.47213595 6.40312424]
 [2.23606798 2.23606798 3.16227766]] type: <class 'numpy.ndarray'> 
y2: [[4.47213595 5.83095189 7.81024968]
 [3.16227766 4.47213595 6.40312424]
 [2.23606798 2.23606798 3.16227766]] type: <class 'numpy.ndarray'> 
y3: 4.47213595499958 type: <class 'numpy.float64'>
'''

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值