public class DBSCAN extends AbstractClusterer implements OptionHandler, 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(Instances instances)
Generate Clustering via DBSCAN
|
int |
clusterInstance(Instance instance)
Classifies a given instance.
|
String |
database_distanceTypeTipText()
Returns the tip text for this property
|
String |
database_TypeTipText()
Returns the tip text for this property
|
Database |
databaseForName(String database_Type,
Instances instances)
Returns a new Class-Instance of the specified database
|
DataObject |
dataObjectForName(String database_distanceType,
Instance instance,
String key,
Database database)
Returns a new Class-Instance of the specified database
|
String |
epsilonTipText()
Returns the tip text for this property
|
Capabilities |
getCapabilities()
Returns default capabilities of the clusterer.
|
String |
getDatabase_distanceType()
Returns the distance-type
|
String |
getDatabase_Type()
Returns the type of the used index (database)
|
double |
getEpsilon()
Returns the value of epsilon
|
int |
getMinPoints()
Returns the value of minPoints
|
String[] |
getOptions()
Gets the current option settings for the OptionHandler.
|
String |
getRevision()
Returns the revision string.
|
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.
|
String |
globalInfo()
Returns a string describing this DataMining-Algorithm
|
Enumeration |
listOptions()
Returns an enumeration of all the available options..
|
static void |
main(String[] args)
Main Method for testing DBSCAN
|
String |
minPointsTipText()
Returns the tip text for this property
|
int |
numberOfClusters()
Returns the number of clusters.
|
void |
setDatabase_distanceType(String database_distanceType)
Sets a new distance-type
|
void |
setDatabase_Type(String database_Type)
Sets a new database-type
|
void |
setEpsilon(double epsilon)
Sets a new value for epsilon
|
void |
setMinPoints(int minPoints)
Sets a new value for minPoints
|
void |
setOptions(String[] options)
Sets the OptionHandler's options using the given list.
|
String |
toString()
Returns a description of the clusterer
|
distributionForInstance, forName, makeCopies, makeCopypublic Capabilities getCapabilities()
getCapabilities in interface ClusterergetCapabilities in interface CapabilitiesHandlergetCapabilities in class AbstractClustererCapabilitiespublic void buildClusterer(Instances instances) throws Exception
buildClusterer in interface ClustererbuildClusterer in class AbstractClustererinstances - The instances that need to be clusteredException - If clustering was not successfulpublic int clusterInstance(Instance instance) throws Exception
clusterInstance in interface ClustererclusterInstance in class AbstractClustererinstance - The instance to be assigned to a clusterException - If instance could not be clustered
successfullypublic int numberOfClusters()
throws Exception
numberOfClusters in interface ClusterernumberOfClusters in class AbstractClustererException - if number of clusters could not be returned
successfullypublic Enumeration listOptions()
listOptions in interface OptionHandlerpublic void setOptions(String[] options) throws 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 OptionHandleroptions - The list of options as an array of stringsException - If an option is not supportedpublic String[] getOptions()
getOptions in interface OptionHandlerpublic Database databaseForName(String database_Type, Instances instances)
database_Type - String of the specified databaseinstances - Instances that were delivered from WEKApublic DataObject dataObjectForName(String database_distanceType, Instance instance, String key, Database database)
database_distanceType - String of the specified distance-typeinstance - The original instance that needs to hold by this DataObjectkey - Key for this DataObjectdatabase - Link to the databasepublic void setMinPoints(int minPoints)
minPoints - MinPointspublic void setEpsilon(double epsilon)
epsilon - Epsilonpublic double getEpsilon()
public int getMinPoints()
public String getDatabase_distanceType()
public String getDatabase_Type()
public void setDatabase_distanceType(String database_distanceType)
database_distanceType - The new distance-typepublic void setDatabase_Type(String database_Type)
database_Type - The new database-typepublic String epsilonTipText()
public String minPointsTipText()
public String database_TypeTipText()
public String database_distanceTypeTipText()
public String globalInfo()
public TechnicalInformation getTechnicalInformation()
getTechnicalInformation in interface TechnicalInformationHandlerpublic String toString()
public String getRevision()
getRevision in interface RevisionHandlergetRevision in class AbstractClustererpublic static void main(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);Copyright © 2021 University of Waikato, Hamilton, NZ. All rights reserved.