SciPy

scipy.spatial.distance.minkowski

scipy.spatial.distance.minkowski(u, v, p=2, w=None)[source]

Compute the Minkowski distance between two 1-D arrays.

The Minkowski distance between 1-D arrays u and v, is defined as

\[ \begin{align}\begin{aligned}{||u-v||}_p = (\sum{|u_i - v_i|^p})^{1/p}.\\\left(\sum{w_i(|(u_i - v_i)|^p)}\right)^{1/p}.\end{aligned}\end{align} \]
Parameters:

u : (N,) array_like

Input array.

v : (N,) array_like

Input array.

p : int

The order of the norm of the difference \({||u-v||}_p\).

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:

minkowski : double

The Minkowski distance between vectors u and v.

Examples

>>> from scipy.spatial import distance
>>> distance.minkowski([1, 0, 0], [0, 1, 0], 1)
2.0
>>> distance.minkowski([1, 0, 0], [0, 1, 0], 2)
1.4142135623730951
>>> distance.minkowski([1, 0, 0], [0, 1, 0], 3)
1.2599210498948732
>>> distance.minkowski([1, 1, 0], [0, 1, 0], 1)
1.0
>>> distance.minkowski([1, 1, 0], [0, 1, 0], 2)
1.0
>>> distance.minkowski([1, 1, 0], [0, 1, 0], 3)
1.0