org.apache.commons.math3.stat.clustering
Class DBSCANClusterer<T extends Clusterable<T>>

java.lang.Object
  extended by org.apache.commons.math3.stat.clustering.DBSCANClusterer<T>
Type Parameters:
T - type of the points to cluster

Deprecated. As of 3.2 (to be removed in 4.0), use DBSCANClusterer instead

@Deprecated
public class DBSCANClusterer<T extends Clusterable<T>>
extends Object

DBSCAN (density-based spatial clustering of applications with noise) algorithm.

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:

Note: as DBSCAN is not a centroid-based clustering algorithm, the resulting Cluster objects will have no defined center, i.e. Cluster.getCenter() will return null.

Since:
3.1
Version:
$Id: DBSCANClusterer.java 1461871 2013-03-27 22:01:25Z tn $
See Also:
DBSCAN (wikipedia), A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise

Constructor Summary
DBSCANClusterer(double eps, int minPts)
          Deprecated. Creates a new instance of a DBSCANClusterer.
 
Method Summary
 List<Cluster<T>> cluster(Collection<T> points)
          Deprecated. Performs DBSCAN cluster analysis.
 double getEps()
          Deprecated. Returns the maximum radius of the neighborhood to be considered.
 int getMinPts()
          Deprecated. Returns the minimum number of points needed for a cluster.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DBSCANClusterer

public DBSCANClusterer(double eps,
                       int minPts)
                throws NotPositiveException
Deprecated. 
Creates a new instance of a DBSCANClusterer.

Parameters:
eps - maximum radius of the neighborhood to be considered
minPts - minimum number of points needed for a cluster
Throws:
NotPositiveException - if eps < 0.0 or minPts < 0
Method Detail

getEps

public double getEps()
Deprecated. 
Returns the maximum radius of the neighborhood to be considered.

Returns:
maximum radius of the neighborhood

getMinPts

public int getMinPts()
Deprecated. 
Returns the minimum number of points needed for a cluster.

Returns:
minimum number of points needed for a cluster

cluster

public List<Cluster<T>> cluster(Collection<T> points)
                                                throws NullArgumentException
Deprecated. 
Performs DBSCAN cluster analysis.

Note: as DBSCAN is not a centroid-based clustering algorithm, the resulting Cluster objects will have no defined center, i.e. Cluster.getCenter() will return null.

Parameters:
points - the points to cluster
Returns:
the list of clusters
Throws:
NullArgumentException - if the data points are null


Copyright © 2003-2013 The Apache Software Foundation. All Rights Reserved.