SciPy

scipy.spatial.distance.kulsinski

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

Compute the Kulsinski dissimilarity between two boolean 1-D arrays.

The Kulsinski dissimilarity between two boolean 1-D arrays u and v, is defined as

\[\frac{c_{TF} + c_{FT} - c_{TT} + n} {c_{FT} + c_{TF} + 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, bool

Input array.

v : (N,) array_like, bool

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:

kulsinski : double

The Kulsinski distance between vectors u and v.

Examples

>>> from scipy.spatial import distance
>>> distance.kulsinski([1, 0, 0], [0, 1, 0])
1.0
>>> distance.kulsinski([1, 0, 0], [1, 1, 0])
0.75
>>> distance.kulsinski([1, 0, 0], [2, 1, 0])
0.33333333333333331
>>> distance.kulsinski([1, 0, 0], [3, 1, 0])
-0.5