scipy.spatial.distance.

汉明#

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

计算两个一维数组之间的汉明距离。

一维数组 uv 之间的汉明距离,简单来说就是 uv 中不一致的元素的比例。如果 uv 是布尔向量,汉明距离就是

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

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

参数:
u(N,) 数组类

输入数组。

v(N,) 数组类

输入数组。

w(N,) 数组类,可选

uv 中每个值的权重。默认是 None,即每个值的权重为 1.0。

返回:
汉明

向量 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