cluster_optics_dbscan#
- sklearn.cluster.cluster_optics_dbscan(*, reachability, core_distances, ordering, eps)[Quelle]#
Führt eine DBSCAN-Extraktion für ein beliebiges Epsilon durch.
Das Extrahieren der Cluster dauert linear Zeit. Beachten Sie, dass dies zu
labels_führt, die denen einesDBSCANmit ähnlichen Einstellungen undepsähneln, nur wennepsnahe beimax_epsliegt.- Parameter:
- reachabilityndarray von Form (n_samples,)
Von OPTICS berechnete Erreichbarkeitsabstände (
reachability_).- core_distancesndarray von Form (n_samples,)
Abstände, bei denen Punkte zu Kernpunkten werden (
core_distances_).- orderingndarray von Form (n_samples,)
Von OPTICS geordnete Punktindizes (
ordering_).- epsfloat
DBSCAN
epsParameter. Muss kleiner alsmax_epsgesetzt werden. Die Ergebnisse ähneln dem DBSCAN-Algorithmus, wennepsundmax_epsnahe beieinander liegen.
- Gibt zurück:
- labels_array von Form (n_samples,)
Die geschätzten Labels.
Beispiele
>>> import numpy as np >>> from sklearn.cluster import cluster_optics_dbscan, compute_optics_graph >>> X = np.array([[1, 2], [2, 5], [3, 6], ... [8, 7], [8, 8], [7, 3]]) >>> ordering, core_distances, reachability, predecessor = compute_optics_graph( ... X, ... min_samples=2, ... max_eps=np.inf, ... metric="minkowski", ... p=2, ... metric_params=None, ... algorithm="auto", ... leaf_size=30, ... n_jobs=None, ... ) >>> eps = 4.5 >>> labels = cluster_optics_dbscan( ... reachability=reachability, ... core_distances=core_distances, ... ordering=ordering, ... eps=eps, ... ) >>> labels array([0, 0, 0, 1, 1, 1])