weka.filters.unsupervised.attribute
Class PKIDiscretize

java.lang.Object
  extended byweka.filters.Filter
      extended byweka.filters.unsupervised.attribute.PotentialClassIgnorer
          extended byweka.filters.unsupervised.attribute.Discretize
              extended byweka.filters.unsupervised.attribute.PKIDiscretize
All Implemented Interfaces:
OptionHandler, java.io.Serializable, UnsupervisedFilter, WeightedInstancesHandler

public class PKIDiscretize
extends Discretize

Discretizes numeric attributes using equal frequency binning where the number of bins is equal to the square root of the number of non-missing values.

Valid filter-specific options are:

-R col1,col2-col4,...
Specifies list of columns to Discretize. First and last are valid indexes. (default: first-last)

-V
Invert matching sense.

-D
Make binary nominal attributes.

Version:
$Revision: 1.4 $
Author:
Richard Kirkby (rkirkby@cs.waikato.ac.nz)
See Also:
Serialized Form

Field Summary
 
Fields inherited from class weka.filters.unsupervised.attribute.Discretize
m_CutPoints, m_DefaultCols, m_DesiredWeightOfInstancesPerInterval, m_DiscretizeCols, m_FindNumBins, m_MakeBinary, m_NumBins, m_UseEqualFrequency
 
Fields inherited from class weka.filters.unsupervised.attribute.PotentialClassIgnorer
m_ClassIndex, m_IgnoreClass
 
Fields inherited from class weka.filters.Filter
m_NewBatch
 
Constructor Summary
PKIDiscretize()
           
 
Method Summary
 java.lang.String binsTipText()
          Returns the tip text for this property
protected  void findNumBins(int index)
          Finds the number of bins to use and creates the cut points.
 java.lang.String findNumBinsTipText()
          Returns the tip text for this property
 int getBins()
          Ignored
 boolean getFindNumBins()
          Get the value of FindNumBins.
 java.lang.String[] getOptions()
          Gets the current settings of the filter.
 boolean getUseEqualFrequency()
          Get the value of UseEqualFrequency.
 java.lang.String globalInfo()
          Returns a string describing this filter
 java.util.Enumeration listOptions()
          Gets an enumeration describing the available options.
static void main(java.lang.String[] argv)
          Main method for testing this class.
 void setBins(int numBins)
          Ignored
 void setFindNumBins(boolean newFindNumBins)
          Set the value of FindNumBins.
 boolean setInputFormat(Instances instanceInfo)
          Sets the format of the input instances.
 void setOptions(java.lang.String[] options)
          Parses the options for this object.
 void setUseEqualFrequency(boolean newUseEqualFrequency)
          Set the value of UseEqualFrequency.
 java.lang.String useEqualFrequencyTipText()
          Returns the tip text for this property
 
Methods inherited from class weka.filters.unsupervised.attribute.Discretize
attributeIndicesTipText, batchFinished, calculateCutPoints, calculateCutPointsByEqualFrequencyBinning, calculateCutPointsByEqualWidthBinning, convertInstance, desiredWeightOfInstancesPerIntervalTipText, getAttributeIndices, getCutPoints, getDesiredWeightOfInstancesPerInterval, getInvertSelection, getMakeBinary, input, invertSelectionTipText, makeBinaryTipText, setAttributeIndices, setAttributeIndicesArray, setDesiredWeightOfInstancesPerInterval, setInvertSelection, setMakeBinary, setOutputFormat
 
Methods inherited from class weka.filters.unsupervised.attribute.PotentialClassIgnorer
getOutputFormat, setIgnoreClass
 
Methods inherited from class weka.filters.Filter
batchFilterFile, 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

PKIDiscretize

public PKIDiscretize()
Method Detail

setInputFormat

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

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

findNumBins

protected void findNumBins(int index)
Finds the number of bins to use and creates the cut points.

Overrides:
findNumBins in class Discretize
Parameters:
index - the attribute index

listOptions

public java.util.Enumeration listOptions()
Gets an enumeration describing the available options.

Specified by:
listOptions in interface OptionHandler
Overrides:
listOptions in class Discretize
Returns:
an enumeration of all the available options.

setOptions

public void setOptions(java.lang.String[] options)
                throws java.lang.Exception
Parses the options for this object. Valid options are:

-R col1,col2-col4,...
Specifies list of columns to Discretize. First and last are valid indexes. (default none)

-V
Invert matching sense.

-D
Make binary nominal attributes.

Specified by:
setOptions in interface OptionHandler
Overrides:
setOptions in class Discretize
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()
Gets the current settings of the filter.

Specified by:
getOptions in interface OptionHandler
Overrides:
getOptions in class Discretize
Returns:
an array of strings suitable for passing to setOptions

globalInfo

public java.lang.String globalInfo()
Returns a string describing this filter

Overrides:
globalInfo in class Discretize
Returns:
a description of the filter suitable for displaying in the explorer/experimenter gui

findNumBinsTipText

public java.lang.String findNumBinsTipText()
Returns the tip text for this property

Overrides:
findNumBinsTipText in class Discretize
Returns:
tip text for this property suitable for displaying in the explorer/experimenter gui

getFindNumBins

public boolean getFindNumBins()
Get the value of FindNumBins.

Overrides:
getFindNumBins in class Discretize
Returns:
Value of FindNumBins.

setFindNumBins

public void setFindNumBins(boolean newFindNumBins)
Set the value of FindNumBins.

Overrides:
setFindNumBins in class Discretize
Parameters:
newFindNumBins - Value to assign to FindNumBins.

useEqualFrequencyTipText

public java.lang.String useEqualFrequencyTipText()
Returns the tip text for this property

Overrides:
useEqualFrequencyTipText in class Discretize
Returns:
tip text for this property suitable for displaying in the explorer/experimenter gui

getUseEqualFrequency

public boolean getUseEqualFrequency()
Get the value of UseEqualFrequency.

Overrides:
getUseEqualFrequency in class Discretize
Returns:
Value of UseEqualFrequency.

setUseEqualFrequency

public void setUseEqualFrequency(boolean newUseEqualFrequency)
Set the value of UseEqualFrequency.

Overrides:
setUseEqualFrequency in class Discretize
Parameters:
newUseEqualFrequency - Value to assign to UseEqualFrequency.

binsTipText

public java.lang.String binsTipText()
Returns the tip text for this property

Overrides:
binsTipText in class Discretize
Returns:
tip text for this property suitable for displaying in the explorer/experimenter gui

getBins

public int getBins()
Ignored

Overrides:
getBins in class Discretize
Returns:
the number of bins.

setBins

public void setBins(int numBins)
Ignored

Overrides:
setBins in class Discretize
Parameters:
numBins - the number of bins

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