weka.filters.unsupervised.attribute
Class NumericToBinary

java.lang.Object
  extended byweka.filters.Filter
      extended byweka.filters.unsupervised.attribute.PotentialClassIgnorer
          extended byweka.filters.unsupervised.attribute.NumericToBinary
All Implemented Interfaces:
java.io.Serializable, StreamableFilter, UnsupervisedFilter

public class NumericToBinary
extends PotentialClassIgnorer
implements UnsupervisedFilter, StreamableFilter

Converts all numeric attributes into binary attributes (apart from the class attribute): 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 nominal.

Version:
$Revision: 1.3 $
Author:
Eibe Frank (eibe@cs.waikato.ac.nz)
See Also:
Serialized Form

Field Summary
 
Fields inherited from class weka.filters.unsupervised.attribute.PotentialClassIgnorer
m_ClassIndex, m_IgnoreClass
 
Fields inherited from class weka.filters.Filter
m_NewBatch
 
Constructor Summary
NumericToBinary()
           
 
Method Summary
private  void convertInstance(Instance instance)
          Convert a single instance over.
 java.lang.String globalInfo()
          Returns a string describing this filter
 boolean input(Instance instance)
          Input an instance for filtering.
static void main(java.lang.String[] argv)
          Main method for testing this class.
 boolean setInputFormat(Instances instanceInfo)
          Sets the format of the input instances.
private  void setOutputFormat()
          Set the output format.
 
Methods inherited from class weka.filters.unsupervised.attribute.PotentialClassIgnorer
getOutputFormat, setIgnoreClass
 
Methods inherited from class weka.filters.Filter
batchFilterFile, batchFinished, bufferInput, copyStringValues, copyStringValues, filterFile, flushInput, getInputFormat, getInputStringIndex, getOutputStringIndex, getStringIndices, inputFormat, inputFormatPeek, isOutputFormatDefined, numPendingOutput, output, outputFormat, outputFormatPeek, outputPeek, push, resetQueue, setOutputFormat, useFilter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NumericToBinary

public NumericToBinary()
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

setInputFormat

public boolean setInputFormat(Instances instanceInfo)
                       throws java.lang.Exception
Sets the format of the input instances.

Overrides:
setInputFormat in class PotentialClassIgnorer
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.

Overrides:
input in class Filter
Parameters:
instance - the input instance
Returns:
true if the filtered instance may now be collected with output().
Throws:
java.lang.IllegalStateException - if no input format has been defined.

setOutputFormat

private void setOutputFormat()
Set the output format.


convertInstance

private void convertInstance(Instance instance)
Convert a single instance over. The converted instance is added to the end of the output queue.

Parameters:
instance - the instance to convert

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