weka.filters.unsupervised.instance
Class RemoveWithZeroes

java.lang.Object
  extended by weka.filters.Filter
      extended by weka.filters.SimpleFilter
          extended by weka.filters.SimpleBatchFilter
              extended by weka.filters.unsupervised.instance.RemoveWithZeroes
All Implemented Interfaces:
Serializable, weka.core.CapabilitiesHandler, weka.core.OptionHandler, weka.core.RevisionHandler, weka.filters.UnsupervisedFilter

public class RemoveWithZeroes
extends weka.filters.SimpleBatchFilter
implements weka.filters.UnsupervisedFilter

Removes all instances that contain at least the specified number (or percentage) of zeroes in numeric attributes.

Valid options are:

 -num-zeroes <number of zeroes or percentage>
  The number of zeroes that an instance must at least contain in
  order to be removed. If the number is between 0 and 1, it is
  interpreted as percentage.
 
 -D
  Turns on output of debugging information.

Version:
$Revision: 4521 $
Author:
fracpete (fracpete at waikato dot ac dot nz)
See Also:
Serialized Form

Field Summary
protected  int m_MinZeroes
          the minimum number of zeroes that a row must have.
protected  int m_NumNumericAttributes
          the number of numeric attributes in the dataset.
protected  double m_NumZeroes
          the number (or percentage) of zeroes that the row must contain to be removed.
 
Fields inherited from class weka.filters.SimpleFilter
m_Debug
 
Fields inherited from class weka.filters.Filter
m_FirstBatchDone, m_InputRelAtts, m_InputStringAtts, m_NewBatch, m_OutputRelAtts, m_OutputStringAtts
 
Constructor Summary
RemoveWithZeroes()
           
 
Method Summary
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.
 double getNumZeroes()
          Returns the number of zeroes a row must have at least in order to be removed.
 String[] getOptions()
          Gets the current settings of the filter.
 String getRevision()
          Returns the revision string.
 String globalInfo()
          Returns a string describing this classifier.
 Enumeration listOptions()
          Returns an enumeration describing the available options.
static void main(String[] args)
          Main method for testing this class.
 String numZeroesTipText()
          Returns the tip text for this property.
protected  weka.core.Instances process(weka.core.Instances instances)
          Processes the given data (may change the provided dataset) and returns the modified version.
protected  void reset()
          Resets the filter.
 void setNumZeroes(double value)
          Sets the number of zeroes a row must have at least in order to be removed.
 void setOptions(String[] options)
          Parses a list of options for this object.
 
Methods inherited from class weka.filters.SimpleBatchFilter
batchFinished, hasImmediateOutputFormat, input
 
Methods inherited from class weka.filters.SimpleFilter
debugTipText, getDebug, setDebug, setInputFormat
 
Methods inherited from class weka.filters.Filter
batchFilterFile, bufferInput, copyValues, copyValues, filterFile, flushInput, getCapabilities, getInputFormat, getOutputFormat, initInputLocators, initOutputLocators, inputFormatPeek, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputFormatPeek, outputPeek, push, resetQueue, runFilter, setOutputFormat, testInputFormat, toString, useFilter, wekaStaticWrapper
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_NumZeroes

protected double m_NumZeroes
the number (or percentage) of zeroes that the row must contain to be removed.


m_NumNumericAttributes

protected int m_NumNumericAttributes
the number of numeric attributes in the dataset.


m_MinZeroes

protected int m_MinZeroes
the minimum number of zeroes that a row must have.

Constructor Detail

RemoveWithZeroes

public RemoveWithZeroes()
Method Detail

globalInfo

public String globalInfo()
Returns a string describing this classifier.

Specified by:
globalInfo in class weka.filters.SimpleFilter
Returns:
a description of the classifier suitable for displaying in the explorer/experimenter gui

listOptions

public Enumeration listOptions()
Returns an enumeration describing the available options.

Specified by:
listOptions in interface weka.core.OptionHandler
Overrides:
listOptions in class weka.filters.SimpleFilter
Returns:
an enumeration of all the available options.

setOptions

public void setOptions(String[] options)
                throws Exception
Parses a list of options for this object.

Specified by:
setOptions in interface weka.core.OptionHandler
Overrides:
setOptions in class weka.filters.SimpleFilter
Parameters:
options - the list of options as an array of strings
Throws:
Exception - if an option is not supported

getOptions

public String[] getOptions()
Gets the current settings of the filter.

Specified by:
getOptions in interface weka.core.OptionHandler
Overrides:
getOptions in class weka.filters.SimpleFilter
Returns:
an array of strings suitable for passing to setOptions

setNumZeroes

public void setNumZeroes(double value)
Sets the number of zeroes a row must have at least in order to be removed. 0-1 is interpreted as percentage.

Parameters:
value - the number of zeroes or percentage

getNumZeroes

public double getNumZeroes()
Returns the number of zeroes a row must have at least in order to be removed. 0-1 is interpreted as percentage.

Returns:
the number of zeroes or percentage

numZeroesTipText

public String numZeroesTipText()
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 interface weka.core.CapabilitiesHandler
Overrides:
getCapabilities in class weka.filters.Filter
Returns:
the capabilities of this object
See Also:
Capabilities

reset

protected void reset()
Resets the filter.

Overrides:
reset in class weka.filters.SimpleFilter

determineOutputFormat

protected weka.core.Instances determineOutputFormat(weka.core.Instances inputFormat)
                                             throws Exception
Determines the output format based on the input format and returns this.

Specified by:
determineOutputFormat in class weka.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 class weka.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 interface weka.core.RevisionHandler
Overrides:
getRevision in class weka.filters.Filter
Returns:
the revision

main

public static void main(String[] args)
Main method for testing this class.

Parameters:
args - should contain arguments to the filter: use -h for help


Copyright © 2012 University of Waikato, Hamilton, NZ. All Rights Reserved.