Class NumericTransform
java.lang.Object
weka.filters.Filter
weka.filters.unsupervised.attribute.NumericTransform
- All Implemented Interfaces:
Serializable
,CapabilitiesHandler
,CapabilitiesIgnorer
,CommandlineRunnable
,OptionHandler
,RevisionHandler
,WeightedAttributesHandler
,WeightedInstancesHandler
,StreamableFilter
,UnsupervisedFilter
public class NumericTransform
extends Filter
implements UnsupervisedFilter, StreamableFilter, OptionHandler, WeightedInstancesHandler, WeightedAttributesHandler
Transforms numeric attributes using a given
transformation method.
Valid options are:
-R <index1,index2-index4,...> Specify list of columns to transform. First and last are valid indexes (default none). Non-numeric columns are skipped.
-V Invert matching sense.
-C <string> Sets the class containing transformation method. (default java.lang.Math)
-M <string> Sets the method. (default abs)
- Version:
- $Revision: 14508 $
- Author:
- Eibe Frank (eibe@cs.waikato.ac.nz)
- See Also:
-
Constructor Summary
ConstructorDescriptionDefault constructor -- sets the default transform method to java.lang.Math.abs(). -
Method Summary
Modifier and TypeMethodDescriptionReturns the tip text for this propertyReturns the tip text for this propertyGet the current range selectionReturns the Capabilities of this filter.Get the class containing the transformation method.boolean
Get whether the supplied columns are to be transformed or notGet the transformation method.String[]
Gets the current settings of the filter.Returns the revision string.Returns a string describing this filterboolean
Input an instance for filtering.Returns the tip text for this propertyReturns an enumeration describing the available options.static void
Main method for testing this class.Returns the tip text for this propertyvoid
setAttributeIndices
(String rangeList) Set which attributes are to be transformed (or kept if invert is true).void
setAttributeIndicesArray
(int[] attributes) Set which attributes are to be transformed (or kept if invert is true)void
setClassName
(String name) Sets the class containing the transformation method.boolean
setInputFormat
(Instances instanceInfo) Sets the format of the input instances.void
setInvertSelection
(boolean invert) Set whether selected columns should be transformed or not.void
setMethodName
(String name) Set the transformation method.void
setOptions
(String[] options) Parses a given list of options.Methods inherited from class weka.filters.Filter
batchFilterFile, batchFinished, debugTipText, doNotCheckCapabilitiesTipText, filterFile, getCapabilities, getCopyOfInputFormat, getDebug, getDoNotCheckCapabilities, getOutputFormat, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputPeek, postExecution, preExecution, run, runFilter, setDebug, setDoNotCheckCapabilities, toString, useFilter, wekaStaticWrapper
-
Constructor Details
-
NumericTransform
public NumericTransform()Default constructor -- sets the default transform method to java.lang.Math.abs().
-
-
Method Details
-
globalInfo
Returns a string describing this filter- Returns:
- a description of the filter suitable for displaying in the explorer/experimenter gui
-
getCapabilities
Returns the Capabilities of this filter.- Specified by:
getCapabilities
in interfaceCapabilitiesHandler
- Overrides:
getCapabilities
in classFilter
- Returns:
- the capabilities of this object
- See Also:
-
setInputFormat
Sets the format of the input instances.- Overrides:
setInputFormat
in classFilter
- Parameters:
instanceInfo
- an Instances object containing the input instance structure (any instances contained in the object are ignored - only the structure is required).- Returns:
- true if the outputFormat may be collected immediately
- Throws:
Exception
- if the input format can't be set successfully
-
input
Input an instance for filtering. The instance is processed and made available for output immediately.- Overrides:
input
in classFilter
- Parameters:
instance
- the input instance- Returns:
- true if the filtered instance may now be collected with output().
- Throws:
IllegalStateException
- if no input format has been set.InvocationTargetException
- if there is a problem applying the configured transform method.NullPointerException
- if the input format has not been defined.Exception
- if the input instance was not of the correct format or if there was a problem with the filtering.
-
listOptions
Returns an enumeration describing the available options.- Specified by:
listOptions
in interfaceOptionHandler
- Overrides:
listOptions
in classFilter
- Returns:
- an enumeration of all the available options.
-
setOptions
Parses a given list of options. Valid options are:-R <index1,index2-index4,...> Specify list of columns to transform. First and last are valid indexes (default none). Non-numeric columns are skipped.
-V Invert matching sense.
-C <string> Sets the class containing transformation method. (default java.lang.Math)
-M <string> Sets the method. (default abs)
- Specified by:
setOptions
in interfaceOptionHandler
- Overrides:
setOptions
in classFilter
- Parameters:
options
- the list of options as an array of strings- Throws:
Exception
- if an option is not supported
-
getOptions
Gets the current settings of the filter.- Specified by:
getOptions
in interfaceOptionHandler
- Overrides:
getOptions
in classFilter
- Returns:
- an array of strings suitable for passing to setOptions
-
classNameTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getClassName
Get the class containing the transformation method.- Returns:
- string describing the class
-
setClassName
Sets the class containing the transformation method.- Parameters:
name
- the name of the class- Throws:
ClassNotFoundException
- if class can't be found
-
methodNameTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getMethodName
Get the transformation method.- Returns:
- string describing the transformation method.
-
setMethodName
Set the transformation method.- Parameters:
name
- the name of the method- Throws:
NoSuchMethodException
- if method can't be found in class
-
invertSelectionTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getInvertSelection
public boolean getInvertSelection()Get whether the supplied columns are to be transformed or not- Returns:
- true if the supplied columns will be kept
-
setInvertSelection
public void setInvertSelection(boolean invert) Set whether selected columns should be transformed or not.- Parameters:
invert
- the new invert setting
-
attributeIndicesTipText
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getAttributeIndices
Get the current range selection- Returns:
- a string containing a comma separated list of ranges
-
setAttributeIndices
Set which attributes are to be transformed (or kept if invert is true).- Parameters:
rangeList
- a string representing the list of attributes. Since the string will typically come from a user, attributes are indexed from 1.
eg: first-3,5,6-last
-
setAttributeIndicesArray
public void setAttributeIndicesArray(int[] attributes) Set which attributes are to be transformed (or kept if invert is true)- Parameters:
attributes
- an array containing indexes of attributes to select. Since the array will typically come from a program, attributes are indexed from 0.
-
getRevision
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classFilter
- Returns:
- the revision
-
main
Main method for testing this class.- Parameters:
argv
- should contain arguments to the filter: use -h for help
-