Class NumericToBinary
- java.lang.Object
-
- weka.filters.Filter
-
- weka.filters.unsupervised.attribute.PotentialClassIgnorer
-
- weka.filters.unsupervised.attribute.NumericToBinary
-
- All Implemented Interfaces:
java.io.Serializable,CapabilitiesHandler,CapabilitiesIgnorer,CommandlineRunnable,OptionHandler,RevisionHandler,WeightedAttributesHandler,WeightedInstancesHandler,StreamableFilter,UnsupervisedFilter
public class NumericToBinary extends PotentialClassIgnorer implements UnsupervisedFilter, StreamableFilter, WeightedInstancesHandler, WeightedAttributesHandler
Converts all numeric attributes into binary attributes (apart from the class attribute, if set): if the value of the numeric attribute is exactly zero, the value of the new attribute will be zero. If the value of the numeric attribute is missing, the value of the new attribute will be missing. Otherwise, the value of the new attribute will be one. The new attributes will be nominal. Valid options are:-unset-class-temporarily Unsets the class index temporarily before the filter is applied to the data. (default: no)
- Version:
- $Revision: 14534 $
- Author:
- Eibe Frank (eibe@cs.waikato.ac.nz)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description NumericToBinary()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringattributeIndicesTipText()Returns the tip text for this propertyjava.lang.StringgetAttributeIndices()Gets the current range selectionCapabilitiesgetCapabilities()Returns the Capabilities of this filter.booleangetInvertSelection()Gets whether the supplied columns are to be worked on or the others.java.lang.String[]getOptions()Gets the current settings of the filter.java.lang.StringgetRevision()Returns the revision string.java.lang.StringglobalInfo()Returns a string describing this filterbooleaninput(Instance instance)Input an instance for filtering.java.lang.StringinvertSelectionTipText()Returns the tip text for this propertyjava.util.Enumeration<Option>listOptions()Gets an enumeration describing the available options.static voidmain(java.lang.String[] argv)Main method for testing this class.voidsetAttributeIndices(java.lang.String value)Sets which attributes are to be "binarized" (only numeric attributes among the selection will be transformed).voidsetAttributeIndicesArray(int[] value)Sets which attributes are to be transformed to binary.booleansetInputFormat(Instances instanceInfo)Sets the format of the input instances.voidsetInvertSelection(boolean value)Sets whether selected columns should be worked on or all the others apart from these.voidsetOptions(java.lang.String[] options)Parses a given list of options.-
Methods inherited from class weka.filters.unsupervised.attribute.PotentialClassIgnorer
getIgnoreClass, getOutputFormat, ignoreClassTipText, setIgnoreClass
-
Methods inherited from class weka.filters.Filter
batchFilterFile, batchFinished, debugTipText, doNotCheckCapabilitiesTipText, filterFile, getCapabilities, getCopyOfInputFormat, getDebug, getDoNotCheckCapabilities, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputPeek, postExecution, preExecution, run, runFilter, setDebug, setDoNotCheckCapabilities, toString, useFilter, wekaStaticWrapper
-
-
-
-
Method Detail
-
globalInfo
public java.lang.String globalInfo()
Returns a string describing this filter- Returns:
- a description of the filter suitable for displaying in the explorer/experimenter gui
-
getCapabilities
public Capabilities getCapabilities()
Returns the Capabilities of this filter.- Specified by:
getCapabilitiesin interfaceCapabilitiesHandler- Overrides:
getCapabilitiesin classFilter- Returns:
- the capabilities of this object
- See Also:
Capabilities
-
listOptions
public java.util.Enumeration<Option> listOptions()
Gets an enumeration describing the available options.- Specified by:
listOptionsin interfaceOptionHandler- Overrides:
listOptionsin classPotentialClassIgnorer- Returns:
- an enumeration of all the available options.
-
setOptions
public void setOptions(java.lang.String[] options) throws java.lang.ExceptionParses a given list of options. Valid options are:-R <col1,col2-col4,...> Specifies list of columns to binarize. First and last are valid indexes. (default: first-last)
-V Invert matching sense of column indexes.
- Specified by:
setOptionsin interfaceOptionHandler- Overrides:
setOptionsin classPotentialClassIgnorer- Parameters:
options- the list of options as an array of strings- Throws:
java.lang.Exception- if an option is not supported
-
getOptions
public java.lang.String[] getOptions()
Description copied from class:PotentialClassIgnorerGets the current settings of the filter.- Specified by:
getOptionsin interfaceOptionHandler- Overrides:
getOptionsin classPotentialClassIgnorer- Returns:
- an array of strings suitable for passing to setOptions
-
invertSelectionTipText
public java.lang.String 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()
Gets whether the supplied columns are to be worked on or the others.- Returns:
- true if the supplied columns will be worked on
-
setInvertSelection
public void setInvertSelection(boolean value)
Sets whether selected columns should be worked on or all the others apart from these. If true all the other columns are considered for "binarization".- Parameters:
value- the new invert setting
-
attributeIndicesTipText
public java.lang.String attributeIndicesTipText()
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getAttributeIndices
public java.lang.String getAttributeIndices()
Gets the current range selection- Returns:
- a string containing a comma separated list of ranges
-
setAttributeIndices
public void setAttributeIndices(java.lang.String value)
Sets which attributes are to be "binarized" (only numeric attributes among the selection will be transformed).- Parameters:
value- 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- Throws:
java.lang.IllegalArgumentException- if an invalid range list is supplied
-
setAttributeIndicesArray
public void setAttributeIndicesArray(int[] value)
Sets which attributes are to be transformed to binary. (only numeric attributes among the selection will be transformed).- Parameters:
value- an array containing indexes of attributes to binarize. Since the array will typically come from a program, attributes are indexed from 0.- Throws:
java.lang.IllegalArgumentException- if an invalid set of ranges is supplied
-
setInputFormat
public boolean setInputFormat(Instances instanceInfo) throws java.lang.Exception
Sets the format of the input instances.- Overrides:
setInputFormatin classPotentialClassIgnorer- 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:
java.lang.Exception- if the input format can't be set successfully
-
input
public boolean input(Instance instance)
Input an instance for filtering.
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- Overrides:
getRevisionin classFilter- Returns:
- the revision
-
main
public static void main(java.lang.String[] argv)
Main method for testing this class.- Parameters:
argv- should contain arguments to the filter: use -h for help
-
-