# scipy.spatial.distance.hamming#

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

Compute the Hamming distance between two 1-D arrays.

The Hamming distance between 1-D arrays u and v, is simply the proportion of disagreeing components in u and v. If u and v are boolean vectors, the Hamming distance is

$\frac{c_{01} + c_{10}}{n}$

where $$c_{ij}$$ is the number of occurrences of $$\mathtt{u[k]} = i$$ and $$\mathtt{v[k]} = j$$ for $$k < n$$.

Parameters:
u(N,) array_like

Input array.

v(N,) array_like

Input array.

w(N,) array_like, optional

The weights for each value in u and v. Default is None, which gives each value a weight of 1.0

Returns:
hammingdouble

The Hamming distance between vectors u and v.

Examples

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