sklearn.neighbors.kneighbors_graph

sklearn.neighbors.kneighbors_graph()

Calcula el grafo (ponderado) de k-vecinos para los puntos de X

Más información en el Manual de usuario.

Parámetros
Xarray-like de forma (n_samples, n_features) o BallTree

Datos de muestra, en forma de matriz numpy o de un BallTree precalculado.

n_neighborsint

Número de vecinos para cada muestra.

mode{“connectivity”, “distance”}, default=”connectivity”

Tipo de matriz devuelta: “conectividad” devolverá la matriz de conectividad con unos y ceros, y “distancia” devolverá las distancias entre vecinos según la métrica dada.

metricstr, default=”minkowski”

La métrica de distancia utilizada para calcular los k-vecinos de cada punto de muestra. La clase DistanceMetric ofrece una lista de métricas disponibles. La distancia predeterminada es “euclidiana” (métrica “minkowski” con el parámetro p igual a 2.)

pint, default=2

Parámetro de potencia para la métrica de Minkowski. Cuando p = 1, esto equivale a utilizar manhattan_distance (l1), y euclidean_distance (l2) para p = 2. Para p arbitrario, se utiliza minkowski_distance (l_p).

metric_paramsdict, default=None

argumentos de palabras clave adicionales para la función métrica.

include_selfbooleano o “auto”, default=False

Marcar o no cada muestra como el primer vecino más cercano a sí mismo. Si es “auto”, se utiliza True para mode=”connectivity” y False para mode=”distance”.

n_jobsint, default=None

El número de trabajos paralelos a ejecutar para la búsqueda de vecinos. None significa 1 a menos que esté en un contexto joblib.parallel_backend. -1 significa usar todos los procesadores. Consulta Glosario para más detalles.

Devuelve
Amatriz dispersa de forma (n_samples, n_samples)

Grafo en el que se asigna a A[i, j] el peso de la arista que conecta i con j. La matriz tiene el formato CSR.

Ver también

radius_neighbors_graph

Ejemplos

>>> X = [[0], [3], [1]]
>>> from sklearn.neighbors import kneighbors_graph
>>> A = kneighbors_graph(X, 2, mode='connectivity', include_self=True)
>>> A.toarray()
array([[1., 0., 1.],
       [0., 1., 1.],
       [1., 0., 1.]])