Package adams.data.outlier
Class MultiOutlierDetector<T extends DataContainer>
-
- Type Parameters:
T
- the type of data to pass through the detector
- All Implemented Interfaces:
CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<OutlierDetector>
,SizeOfHandler
,OutlierDetector<T>
,DatabaseConnectionHandler
,DatabaseConnectionProvider
,DatabaseConnectionUser
,Serializable
,Comparable
public class MultiOutlierDetector<T extends DataContainer> extends AbstractDatabaseConnectionOutlierDetector<T>
A meta-detector that runs multiple outlier detectors over the data.
Valid options are:
-D (property: debug) If set to true, scheme may output additional info to the console.
-detector <gcms.data.outlier.AbstractOutlierDetector [options]> [-detector ...] (property: subDetectors) The array of outlier detectors to use.
-stop (property: stopOnFirstDetection) If set to true, the detection process will be stopped as soon as one of the sub-detecors detected an outlier.
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class adams.data.outlier.AbstractOutlierDetector
AbstractOutlierDetector.DetectorJob<T extends DataContainer>
-
-
Field Summary
Fields Modifier and Type Field Description protected AbstractOutlierDetector[]
m_Detectors
the detectors.protected boolean
m_StopOnFirstDetection
stops detection as soon as one sub-detector detected something.-
Fields inherited from class adams.data.outlier.AbstractDatabaseConnectionOutlierDetector
m_DatabaseConnection
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
-
Constructor Summary
Constructors Constructor Description MultiOutlierDetector()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
defineOptions()
Adds options to the internal list of options.protected AbstractDatabaseConnection
getDefaultDatabaseConnection()
Returns the default database connection.boolean
getStopOnFirstDetection()
Returns whether detection process is stopped as soon as one detector detected something.AbstractOutlierDetector[]
getSubDetectors()
Returns the detectors in use.String
globalInfo()
Returns a string describing the object.protected List<String>
processData(T data)
Performs the actual detection.void
setStopOnFirstDetection(boolean value)
Sets whether detection process is stopped as soon as one detector detected something.void
setSubDetectors(AbstractOutlierDetector[] value)
Sets the detectors to use.String
stopOnFirstDetectionTipText()
Returns the tip text for this property.String
subDetectorsTipText()
Returns the tip text for this property.protected void
updateDatabaseConnection()
Updates the database connection in the outlier detectors.-
Methods inherited from class adams.data.outlier.AbstractDatabaseConnectionOutlierDetector
getDatabaseConnection, initialize, setDatabaseConnection
-
Methods inherited from class adams.data.outlier.AbstractOutlierDetector
checkData, cleanUp, compareTo, destroy, detect, equals, forCommandLine, forName, getOutlierDetectors, getQuickInfo, reset, shallowCopy, shallowCopy
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager, toCommandLine
-
-
-
-
Field Detail
-
m_Detectors
protected AbstractOutlierDetector[] m_Detectors
the detectors.
-
m_StopOnFirstDetection
protected boolean m_StopOnFirstDetection
stops detection as soon as one sub-detector detected something.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractOptionHandler
-
getDefaultDatabaseConnection
protected AbstractDatabaseConnection getDefaultDatabaseConnection()
Returns the default database connection.- Specified by:
getDefaultDatabaseConnection
in classAbstractDatabaseConnectionOutlierDetector<T extends DataContainer>
- Returns:
- the default database connection
-
subDetectorsTipText
public String subDetectorsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the gui
-
setSubDetectors
public void setSubDetectors(AbstractOutlierDetector[] value)
Sets the detectors to use.- Parameters:
value
- the detectors to use
-
getSubDetectors
public AbstractOutlierDetector[] getSubDetectors()
Returns the detectors in use.- Returns:
- the detectors
-
setStopOnFirstDetection
public void setStopOnFirstDetection(boolean value)
Sets whether detection process is stopped as soon as one detector detected something.- Parameters:
value
- true if detection is to be stopped
-
getStopOnFirstDetection
public boolean getStopOnFirstDetection()
Returns whether detection process is stopped as soon as one detector detected something.- Returns:
- true if detection is stopped
-
stopOnFirstDetectionTipText
public String stopOnFirstDetectionTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
updateDatabaseConnection
protected void updateDatabaseConnection()
Updates the database connection in the outlier detectors.- Overrides:
updateDatabaseConnection
in classAbstractDatabaseConnectionOutlierDetector<T extends DataContainer>
-
processData
protected List<String> processData(T data)
Performs the actual detection.- Specified by:
processData
in classAbstractOutlierDetector<T extends DataContainer>
- Parameters:
data
- the data to process- Returns:
- the detections
-
-