Class SafeRemoveRange
- java.lang.Object
-
- weka.filters.Filter
-
- weka.filters.SimpleFilter
-
- weka.filters.SimpleBatchFilter
-
- weka.filters.unsupervised.instance.SafeRemoveRange
-
- All Implemented Interfaces:
Serializable
,weka.core.CapabilitiesHandler
,weka.core.CapabilitiesIgnorer
,weka.core.CommandlineRunnable
,weka.core.OptionHandler
,weka.core.RevisionHandler
,weka.filters.UnsupervisedFilter
public class SafeRemoveRange extends weka.filters.SimpleBatchFilter implements weka.filters.UnsupervisedFilter
A filter that removes a given range of instances of a dataset.
Works just like weka.filters.unsupervised.instance.RemoveRange, but has a more robust handling of instance ranges. E.g., removal of 30-100 will not result in an error when presenting only 20 or 40 instances, but return no instance or instances 30-40 instead.
Valid options are:
-R <inst1,inst2-inst4,...> Specifies list of instances to select. First and last are valid indexes. (required)
-V Specifies if inverse of selection is to be output.
- Version:
- $Revision$
- Author:
- Eibe Frank ([email protected])
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
m_InvertSelection
whether to invert the selection.protected Range
m_Range
Range of instances requested by the user.
-
Constructor Summary
Constructors Constructor Description SafeRemoveRange()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected weka.core.Instances
determineOutputFormat(weka.core.Instances inputFormat)
Determines the output format based on the input format and returns this.weka.core.Capabilities
getCapabilities()
Returns the Capabilities of this filter.String
getInstancesIndices()
Gets ranges of instances selected.boolean
getInvertSelection()
Gets if selection is to be inverted.String[]
getOptions()
Gets the current settings of the filter.String
getRevision()
Returns the revision string.String
globalInfo()
Returns a string describing this filterString
instancesIndicesTipText()
Returns the tip text for this property.String
invertSelectionTipText()
Returns the tip text for this property.Enumeration
listOptions()
Returns an enumeration describing the available options.static void
main(String[] args)
Main method for running this filter from command-line.protected weka.core.Instances
process(weka.core.Instances instances)
Processes the given data (may change the provided dataset) and returns the modified version.void
setInstancesIndices(String value)
Sets the range of instances to be selected.void
setInvertSelection(boolean value)
Sets if selection is to be inverted.void
setOptions(String[] options)
Parses a given list of options.-
Methods inherited from class weka.filters.SimpleBatchFilter
allowAccessToFullInputFormat, batchFinished, hasImmediateOutputFormat, input, input
-
Methods inherited from class weka.filters.Filter
batchFilterFile, bufferInput, copyValues, copyValues, debugTipText, doNotCheckCapabilitiesTipText, filterFile, flushInput, getCapabilities, getCopyOfInputFormat, getDebug, getDoNotCheckCapabilities, getInputFormat, getOutputFormat, initInputLocators, initOutputLocators, inputFormatPeek, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputFormatPeek, outputPeek, postExecution, preExecution, push, push, resetQueue, run, runFilter, setDebug, setDoNotCheckCapabilities, setOutputFormat, testInputFormat, toString, useFilter, wekaStaticWrapper
-
-
-
-
Field Detail
-
m_Range
protected Range m_Range
Range of instances requested by the user.
-
m_InvertSelection
protected boolean m_InvertSelection
whether to invert the selection.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing this filter- Specified by:
globalInfo
in classweka.filters.SimpleFilter
- Returns:
- a description of the filter suitable for displaying in the GUI.
-
listOptions
public Enumeration listOptions()
Returns an enumeration describing the available options.- Specified by:
listOptions
in interfaceweka.core.OptionHandler
- Overrides:
listOptions
in classweka.filters.Filter
- Returns:
- an enumeration of all the available options.
-
setOptions
public void setOptions(String[] options) throws Exception
Parses a given list of options.
Valid options are:
-R <inst1,inst2-inst4,...> Specifies list of instances to select. First and last are valid indexes. (required)
-V Specifies if inverse of selection is to be output.
- Specified by:
setOptions
in interfaceweka.core.OptionHandler
- Overrides:
setOptions
in classweka.filters.Filter
- Parameters:
options
- the list of options as an array of string.s- Throws:
Exception
- if an option is not supported.
-
getOptions
public String[] getOptions()
Gets the current settings of the filter.- Specified by:
getOptions
in interfaceweka.core.OptionHandler
- Overrides:
getOptions
in classweka.filters.Filter
- Returns:
- an array of strings suitable for passing to setOptions.
-
setInstancesIndices
public void setInstancesIndices(String value)
Sets the range of instances to be selected.- Parameters:
value
- a string representing the list of instances. eg: first-3,5,6-last
-
getInstancesIndices
public String getInstancesIndices()
Gets ranges of instances selected.- Returns:
- the range
-
instancesIndicesTipText
public String instancesIndicesTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setInvertSelection
public void setInvertSelection(boolean value)
Sets if selection is to be inverted.- Parameters:
value
- true if inversion is to be performed
-
getInvertSelection
public boolean getInvertSelection()
Gets if selection is to be inverted.- Returns:
- true if the selection is to be inverted
-
invertSelectionTipText
public String invertSelectionTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getCapabilities
public weka.core.Capabilities getCapabilities()
Returns the Capabilities of this filter.- Specified by:
getCapabilities
in interfaceweka.core.CapabilitiesHandler
- Overrides:
getCapabilities
in classweka.filters.Filter
- Returns:
- the capabilities of this object
- See Also:
Capabilities
-
determineOutputFormat
protected weka.core.Instances determineOutputFormat(weka.core.Instances inputFormat) throws Exception
Determines the output format based on the input format and returns this. In case the output format cannot be returned immediately, i.e., immediateOutputFormat() returns false, then this method will be called from batchFinished().- Specified by:
determineOutputFormat
in classweka.filters.SimpleFilter
- Parameters:
inputFormat
- the input format to base the output format on- Returns:
- the output format
- Throws:
Exception
- in case the determination goes wrong
-
process
protected weka.core.Instances process(weka.core.Instances instances) throws Exception
Processes the given data (may change the provided dataset) and returns the modified version. This method is called in batchFinished().- Specified by:
process
in classweka.filters.SimpleFilter
- Parameters:
instances
- the data to process- Returns:
- the modified data
- Throws:
Exception
- in case the processing goes wrong
-
getRevision
public String getRevision()
Returns the revision string.- Specified by:
getRevision
in interfaceweka.core.RevisionHandler
- Overrides:
getRevision
in classweka.filters.Filter
- Returns:
- the revision
-
main
public static void main(String[] args)
Main method for running this filter from command-line.- Parameters:
args
- arguments to the filter: use -h for help
-
-