scipy.spatial.distance.

hamming#

scipy.spatial.distance.hamming(u, v, w=None)[source]#

計算兩個一維陣列之間的漢明距離。

一維陣列 uv 之間的漢明距離,就是 uv 中不同成分的比例。如果 uv 是布林向量,則漢明距離為

\[\frac{c_{01} + c_{10}}{n}\]

其中 \(c_{ij}\)\(\mathtt{u[k]} = i\)\(\mathtt{v[k]} = j\)\(k < n\) 中出現的次數。

參數:
u(N,) 類陣列 (array_like)

輸入陣列。

v(N,) 類陣列 (array_like)

輸入陣列。

w(N,) 類陣列 (array_like),選填

uv 中每個值的權重。預設值為 None,表示每個值的權重為 1.0。

回傳值:
hammingdouble (雙精度浮點數)

向量 uv 之間的漢明距離。

範例

>>> from scipy.spatial import distance
>>> distance.hamming([1, 0, 0], [0, 1, 0])
0.66666666666666663
>>> distance.hamming([1, 0, 0], [1, 1, 0])
0.33333333333333331
>>> distance.hamming([1, 0, 0], [2, 0, 0])
0.33333333333333331
>>> distance.hamming([1, 0, 0], [3, 0, 0])
0.33333333333333331