scipy.spatial.distance.

mahalanobis#

scipy.spatial.distance.mahalanobis(u, v, VI)[источник]#

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

Расстояние Махаланобиса между 1-D массивами u и v, определяется как

\[\sqrt{ (u-v) V^{-1} (u-v)^T }\]

где V является ковариационной матрицей. Обратите внимание, что аргумент VI является обратным к V.

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

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

v(N,) array_like

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

VIarray_like

Обратная матрица ковариации.

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

Расстояние Махаланобиса между векторами u и v.

Примеры

>>> from scipy.spatial import distance
>>> iv = [[1, 0.5, 0.5], [0.5, 1, 0.5], [0.5, 0.5, 1]]
>>> distance.mahalanobis([1, 0, 0], [0, 1, 0], iv)
1.0
>>> distance.mahalanobis([0, 2, 0], [0, 1, 0], iv)
1.0
>>> distance.mahalanobis([2, 0, 0], [0, 1, 0], iv)
1.7320508075688772