public class DBSCAN
extends weka.clusterers.AbstractClusterer
implements weka.core.OptionHandler, weka.core.TechnicalInformationHandler
@inproceedings{Ester1996, author = {Martin Ester and Hans-Peter Kriegel and Joerg Sander and Xiaowei Xu}, booktitle = {Second International Conference on Knowledge Discovery and Data Mining}, editor = {Evangelos Simoudis and Jiawei Han and Usama M. Fayyad}, pages = {226-231}, publisher = {AAAI Press}, title = {A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise}, year = {1996} }Valid options are:
-E <double> epsilon (default = 0.9)
-M <int> minPoints (default = 6)
-I <String> index (database) used for DBSCAN (default = weka.clusterers.forOPTICSAndDBScan.Databases.SequentialDatabase)
-D <String> distance-type (default = weka.clusterers.forOPTICSAndDBScan.DataObjects.EuclideanDataObject)
Constructor and Description |
---|
DBSCAN() |
Modifier and Type | Method and Description |
---|---|
void |
buildClusterer(weka.core.Instances instances)
Generate Clustering via DBSCAN
|
int |
clusterInstance(weka.core.Instance instance)
Classifies a given instance.
|
java.lang.String |
distanceFunctionTipText()
Returns the tip text for this property.
|
java.lang.String |
epsilonTipText()
Returns the tip text for this property
|
weka.core.Capabilities |
getCapabilities()
Returns default capabilities of the clusterer.
|
weka.core.DistanceFunction |
getDistanceFunction()
returns the distance function currently in use.
|
double |
getEpsilon()
Returns the value of epsilon
|
int |
getMinPoints()
Returns the value of minPoints
|
java.lang.String[] |
getOptions()
Gets the current option settings for the OptionHandler.
|
java.lang.String |
getRevision()
Returns the revision string.
|
weka.core.TechnicalInformation |
getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing
detailed information about the technical background of this class,
e.g., paper reference or book this class is based on.
|
java.lang.String |
globalInfo()
Returns a string describing this DataMining-Algorithm
|
java.util.Enumeration |
listOptions()
Returns an enumeration of all the available options..
|
static void |
main(java.lang.String[] args)
Main Method for testing DBSCAN
|
java.lang.String |
minPointsTipText()
Returns the tip text for this property
|
int |
numberOfClusters()
Returns the number of clusters.
|
void |
setDistanceFunction(weka.core.DistanceFunction df)
sets the distance function to use for nearest neighbour search.
|
void |
setEpsilon(double epsilon)
Sets a new value for epsilon
|
void |
setMinPoints(int minPoints)
Sets a new value for minPoints
|
void |
setOptions(java.lang.String[] options)
Sets the OptionHandler's options using the given list.
|
java.lang.String |
toString()
Returns a description of the clusterer
|
debugTipText, distributionForInstance, doNotCheckCapabilitiesTipText, forName, getDebug, getDoNotCheckCapabilities, makeCopies, makeCopy, postExecution, preExecution, run, runClusterer, setDebug, setDoNotCheckCapabilities
public weka.core.Capabilities getCapabilities()
getCapabilities
in interface weka.clusterers.Clusterer
getCapabilities
in interface weka.core.CapabilitiesHandler
getCapabilities
in class weka.clusterers.AbstractClusterer
public void buildClusterer(weka.core.Instances instances) throws java.lang.Exception
buildClusterer
in interface weka.clusterers.Clusterer
buildClusterer
in class weka.clusterers.AbstractClusterer
instances
- The instances that need to be clusteredjava.lang.Exception
- If clustering was not successfulpublic int clusterInstance(weka.core.Instance instance) throws java.lang.Exception
clusterInstance
in interface weka.clusterers.Clusterer
clusterInstance
in class weka.clusterers.AbstractClusterer
instance
- The instance to be assigned to a clusterjava.lang.Exception
- If instance could not be clustered
successfullypublic int numberOfClusters() throws java.lang.Exception
numberOfClusters
in interface weka.clusterers.Clusterer
numberOfClusters
in class weka.clusterers.AbstractClusterer
java.lang.Exception
- if number of clusters could not be returned
successfullypublic java.util.Enumeration listOptions()
listOptions
in interface weka.core.OptionHandler
listOptions
in class weka.clusterers.AbstractClusterer
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-E <double> epsilon (default = 0.9)
-M <int> minPoints (default = 6)
-I <String> index (database) used for DBSCAN (default = weka.clusterers.forOPTICSAndDBScan.Databases.SequentialDatabase)
-D <String> distance-type (default = weka.clusterers.forOPTICSAndDBScan.DataObjects.EuclideanDataObject)
setOptions
in interface weka.core.OptionHandler
setOptions
in class weka.clusterers.AbstractClusterer
options
- The list of options as an array of stringsjava.lang.Exception
- If an option is not supportedpublic java.lang.String[] getOptions()
getOptions
in interface weka.core.OptionHandler
getOptions
in class weka.clusterers.AbstractClusterer
public void setMinPoints(int minPoints)
minPoints
- MinPointspublic void setEpsilon(double epsilon)
epsilon
- Epsilonpublic double getEpsilon()
public int getMinPoints()
public java.lang.String distanceFunctionTipText()
public weka.core.DistanceFunction getDistanceFunction()
public void setDistanceFunction(weka.core.DistanceFunction df) throws java.lang.Exception
df
- the new distance function to usejava.lang.Exception
- if instances cannot be processedpublic java.lang.String epsilonTipText()
public java.lang.String minPointsTipText()
public java.lang.String globalInfo()
public weka.core.TechnicalInformation getTechnicalInformation()
getTechnicalInformation
in interface weka.core.TechnicalInformationHandler
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String getRevision()
getRevision
in interface weka.core.RevisionHandler
getRevision
in class weka.clusterers.AbstractClusterer
public static void main(java.lang.String[] args)
args
- Valid parameters are: 'E' epsilon (default = 0.9); 'M' minPoints (default = 6);
'I' index-type (default = weka.clusterers.forOPTICSAndDBScan.Databases.SequentialDatabase);
'D' distance-type (default = weka.clusterers.forOPTICSAndDBScan.DataObjects.EuclideanDataObject);