python scipy.spatial.distance 距離計算函數
1 scipy.spatial
from scipy import spatial
在scipy.spatial中最重要的模塊應該就是距離計算模塊distance瞭。
2 scipy.spatial.distance.cdist
2.1 語法
scipy.spatial.distance.cdist(XA, XB, metric='euclidean', p=None, V=None, VI=None, w=None)
該函數用於計算兩個輸入集合的距離,通過metric參數指定計算距離的不同方式得到不同的距離度量值。
2.2 metric的取值
braycurtis
canberra
chebyshev:切比雪夫距離
cityblock
correlation:相關系數
cosine:餘弦夾角
dice
euclidean:歐式距離
hamming:漢明距離
jaccard:傑卡德相似系數
kulsinski
mahalanobis:馬氏距離
matching
minkowski:閔可夫斯基距離
rogerstanimoto
russellrao
seuclidean:標準化歐式距離
sokalmichener
sokalsneath
sqeuclidean
wminkowski
yule
2.3 常用歐氏距離計算
from scipy.spatial.distance import cdist 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') #=================結果================= array([[ 4.47213595, 5.83095189, 7.81024968], [ 3.16227766, 4.47213595, 6.40312424], [ 2.23606798, 2.23606798, 3.16227766]])
解析上述計算過程:結果數組中的第一行數據表示的是x1數組中第一個元素點與x2數組中各個元素點的距離,計算兩點之間的距離,以點(1,3)與(3,7)點的距離為例:
np.power((1-3)**2 +(3-7)**2,1/2) #=================結果================= 4.4721359549995796
到此這篇關於python scipy.spatial.distance 距離計算函數 的文章就介紹到這瞭,更多相關python scipy.spatial.distance 內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python&Matlab實現螞蟻群算法求解最短路徑問題的示例
- python數學建模(SciPy+ Numpy+Pandas)
- 人工智能——K-Means聚類算法及Python實現
- python 基於空間相似度的K-means軌跡聚類的實現
- Python中的imread()函數用法說明