Class DBSCANClusterer<T extends Clusterable<T>>

  • Type Parameters:
    T - type of the points to cluster

    @Deprecated
    public class DBSCANClusterer<T extends Clusterable<T>>
    extends java.lang.Object
    Deprecated.
    As of 3.2 (to be removed in 4.0), use DBSCANClusterer instead
    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:

    • eps: the distance that defines the ε-neighborhood of a point
    • minPoints: the minimum number of density-connected points required to form a cluster

    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
    See Also:
    DBSCAN (wikipedia), A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise
    • Constructor Summary

      Constructors 
      Constructor Description
      DBSCANClusterer​(double eps, int minPts)
      Deprecated.
      Creates a new instance of a DBSCANClusterer.
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      java.util.List<Cluster<T>> cluster​(java.util.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 java.util.List<Cluster<T>> cluster​(java.util.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