scipy.spatial.distance.

kulczynski1#

scipy.spatial.distance.kulczynski1(u, v, *, w=None)[источник]#

Вычислить несходство Кульчинского 1 между двумя булевыми одномерными массивами.

Устарело с версии 1.15.0: Эта функция устарела и будет удалена в SciPy 1.17.0. Замените использование kulczynski1(u, v) с 1/jaccard(u, v) - 1.

Несходство Кульчинского 1 между двумя булевыми одномерными массивами u и v длины n, определяется как

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

где \(c_{ij}\) — это количество вхождений \(\mathtt{u[k]} = i\) и \(\mathtt{v[k]} = j\) для \(k \in {0, 1, ..., n-1}\).

Параметры:
u(N,) array_like, bool

Входной массив.

v(N,) array_like, bool

Входной массив.

w(N,) array_like, optional

Веса для каждого значения в u и v. По умолчанию None, что присваивает каждому значению вес 1.0

Возвращает:
kulczynski1float

Расстояние Кульчинского 1 между векторами u и v.

Примечания

Эта мера имеет минимальное значение 0 и не имеет верхнего предела. Она не определена, когда нет несовпадений.

Добавлено в версии 1.8.0.

Ссылки

[1]

Kulczynski S. et al. Bulletin International de l’Academie Polonaise des Sciences et des Lettres, Classe des Sciences Mathematiques et Naturelles, Serie B (Sciences Naturelles). 1927; Supplement II: 57-203.

Примеры

>>> from scipy.spatial import distance
>>> distance.kulczynski1([1, 0, 0], [0, 1, 0])
0.0
>>> distance.kulczynski1([True, False, False], [True, True, False])
1.0
>>> distance.kulczynski1([True, False, False], [True])
0.5
>>> distance.kulczynski1([1, 0, 0], [3, 1, 0])
-3.0