T - type of the points to clusterpublic class DBSCANClusterer<T extends Clusterable> extends Clusterer<T>
The DBSCAN algorithm forms clusters based on the idea of density connectivity, i.e. a point p is density connected to another point q, if there exists a chain of points pi, with i = 1 .. n and p1 = p and pn = q, such that each pair <pi, pi+1> is directly density-reachable. A point q is directly density-reachable from point p if it is in the ε-neighborhood of this point.
Any point that is not density-reachable from a formed cluster is treated as noise, and will thus not be present in the result.
The algorithm requires two parameters:
| Constructor | Description | 
|---|---|
DBSCANClusterer(double eps,
               int minPts) | 
 Creates a new instance of a DBSCANClusterer. 
 | 
DBSCANClusterer(double eps,
               int minPts,
               DistanceMeasure measure) | 
 Creates a new instance of a DBSCANClusterer. 
 | 
| Modifier and Type | Method | Description | 
|---|---|---|
List<Cluster<T>> | 
cluster(Collection<T> points) | 
 Performs DBSCAN cluster analysis. 
 | 
double | 
getEps() | 
 Returns the maximum radius of the neighborhood to be considered. 
 | 
int | 
getMinPts() | 
 Returns the minimum number of points needed for a cluster. 
 | 
distance, getDistanceMeasurepublic DBSCANClusterer(double eps,
                       int minPts)
                throws MathIllegalArgumentException
The euclidean distance will be used as default distance measure.
eps - maximum radius of the neighborhood to be consideredminPts - minimum number of points needed for a clusterMathIllegalArgumentException - if eps < 0.0 or minPts < 0public DBSCANClusterer(double eps,
                       int minPts,
                       DistanceMeasure measure)
                throws MathIllegalArgumentException
eps - maximum radius of the neighborhood to be consideredminPts - minimum number of points needed for a clustermeasure - the distance measure to useMathIllegalArgumentException - if eps < 0.0 or minPts < 0public double getEps()
public int getMinPts()
public List<Cluster<T>> cluster(Collection<T> points) throws NullArgumentException
cluster in class Clusterer<T extends Clusterable>points - the points to clusterNullArgumentException - if the data points are nullCopyright © 2016–2018 Hipparchus.org. All rights reserved.