nan_euclidean_distances#

sklearn.metrics.pairwise.nan_euclidean_distances(X, Y=None, *, squared=False, missing_values=nan, copy=True)[Quelle]#

Berechne die euklidischen Distanzen bei fehlenden Werten.

Berechnet den euklidischen Abstand zwischen jedem Paar von Stichproben in X und Y, wobei Y=X angenommen wird, wenn Y=None ist. Bei der Berechnung des Abstands zwischen einem Stichprobenpaar ignoriert diese Formulierung Merkmalskoordinaten mit fehlenden Werten in einer der beiden Stichproben und skaliert das Gewicht der verbleibenden Koordinaten hoch.

dist(x,y) = sqrt(weight * sq. distance from present coordinates)

wobei

weight = Total # of coordinates / # of present coordinates

Beispielsweise ist der Abstand zwischen [3, na, na, 6] und [1, na, 4, 5]

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

Wenn alle Koordinaten fehlen oder wenn keine gemeinsamen vorhandenen Koordinaten vorhanden sind, wird für dieses Paar NaN zurückgegeben.

Lesen Sie mehr im Benutzerhandbuch.

Hinzugefügt in Version 0.22.

Parameter:
Xarray-like, Form (n_samples_X, n_features)

Eine Matrix, bei der jede Zeile eine Stichprobe und jede Spalte ein Merkmal darstellt.

Yarray-like, Form (n_samples_Y, n_features), Standardwert=None

Ein Array, bei dem jede Zeile eine Stichprobe und jede Spalte ein Merkmal ist. Wenn None, verwendet die Methode Y=X.

squaredbool, Standardwert=False

Gibt quadrierte euklidische Abstände zurück.

missing_valuesnp.nan, float oder int, Standardwert=np.nan

Darstellung eines fehlenden Wertes.

copybool, Standard=True

Erstellt und verwendet eine tiefe Kopie von X und Y (falls Y existiert).

Gibt zurück:
distancesndarray der Form (n_samples_X, n_samples_Y)

Gibt die Abstände zwischen den Zeilenvektoren von X und den Zeilenvektoren von Y zurück.

Siehe auch

paired_distances

Abstände zwischen Paaren von Elementen von X und Y.

Referenzen

Beispiele

>>> 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]])