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
John K. Dixon, «Pattern Recognition with Partly Missing Data», IEEE Transactions on Systems, Man, and Cybernetics, Volumen: 9, Número: 10, pp. 617 - 621, Oct. 1979. http://ieeexplore.ieee.org/abstract/document/4310090/
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]])