sklearn.metrics.pairwise.nan_euclidean_distances

sklearn.metrics.pairwise.nan_euclidean_distances()

Calcula las distancias euclidianas en presencia de valores faltantes.

Calcula la distancia euclidiana entre cada par de muestras en X y Y, donde se asume Y=X si Y=None. Al calcular la distancia entre un par de muestras, esta formulación ignora las coordenadas de características con un valor faltante en cualquiera de las muestras y escala la ponderación de las coordenadas restantes:

dist(x,y) = sqrt(ponderación * distancia cuadrada de las coordenadas presentes) donde, ponderación = # total de coordenadas / # de coordenadas presentes

Por ejemplo, la distancia entre [3, na, na, 6] y [1, na, 4, 5] es:

\[\sqrt{\frac{4}{2}((3-1)^2 + (6-5)^2)}\]

Si faltan todas las coordenadas o si no hay coordenadas comunes presentes entonces se devuelve NaN para ese par.

Leer más en el Manual de Usuario.

Nuevo en la versión 0.22.

Parámetros
Xarray-like de forma=(n_samples_X, n_features)
Yarray-like de forma=(n_samples_Y, n_features), default=None
squaredbool, default=False

Devuelve las distancias Euclidianas al cuadrado.

missing_valuesnp.nan o int, default=np.nan

Representación del valor faltante.

copybool, default=True

Haz y utiliza una copia profunda de X y Y (si existe Y).

Devuelve
distancesndarray de forma (n_samples_X, n_samples_Y)

Ver también

paired_distances

Distancias entre pares de elementos de X y Y.

Referencias

Ejemplos

>>> from sklearn.metrics.pairwise import nan_euclidean_distances
>>> nan = float("NaN")
>>> X = [[0, 1], [1, nan]]
>>> nan_euclidean_distances(X, X) # distance between rows of X
array([[0.        , 1.41421356],
       [1.41421356, 0.        ]])
>>> # get distance to origin
>>> nan_euclidean_distances(X, [[0, 0]])
array([[1.        ],
       [1.41421356]])