Class PKIDiscretize

All Implemented Interfaces:
Serializable, CapabilitiesHandler, CapabilitiesIgnorer, CommandlineRunnable, OptionHandler, RevisionHandler, TechnicalInformationHandler, WeightedAttributesHandler, WeightedInstancesHandler, UnsupervisedFilter

Discretizes numeric attributes using equal frequency binning and forces the number of bins to be equal to the square root of the number of values of the numeric attribute.

For more information, see:

Ying Yang, Geoffrey I. Webb: Proportional k-Interval Discretization for Naive-Bayes Classifiers. In: 12th European Conference on Machine Learning, 564-575, 2001.

BibTeX:

 @inproceedings{Yang2001,
    author = {Ying Yang and Geoffrey I. Webb},
    booktitle = {12th European Conference on Machine Learning},
    pages = {564-575},
    publisher = {Springer},
    series = {LNCS},
    title = {Proportional k-Interval Discretization for Naive-Bayes Classifiers},
    volume = {2167},
    year = {2001}
 }
 

Valid options are:

 -unset-class-temporarily
  Unsets the class index temporarily before the filter is
  applied to the data.
  (default: no)
 
 -R <col1,col2-col4,...>
  Specifies list of columns to discretize. First and last are valid indexes.
  (default: first-last)
 
 -V
  Invert matching sense of column indexes.
 
 -D
  Output binary attributes for discretized attributes.
 
Version:
$Revision: 14508 $
Author:
Richard Kirkby (rkirkby@cs.waikato.ac.nz)
See Also:
  • Constructor Details

    • PKIDiscretize

      public PKIDiscretize()
  • Method Details

    • setInputFormat

      public boolean setInputFormat(Instances instanceInfo) throws 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:
      Exception - if the input format can't be set successfully
    • listOptions

      public Enumeration<Option> 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(String[] options) throws Exception
      Parses a given list of options.

      Valid options are:

       -unset-class-temporarily
        Unsets the class index temporarily before the filter is
        applied to the data.
        (default: no)
       
       -R <col1,col2-col4,...>
        Specifies list of columns to discretize. First and last are valid indexes.
        (default: first-last)
       
       -V
        Invert matching sense of column indexes.
       
       -D
        Output binary attributes for discretized attributes.
       
      Specified by:
      setOptions in interface OptionHandler
      Overrides:
      setOptions in class Discretize
      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 OptionHandler
      Overrides:
      getOptions in class Discretize
      Returns:
      an array of strings suitable for passing to setOptions
    • globalInfo

      public 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
    • getTechnicalInformation

      public TechnicalInformation getTechnicalInformation()
      Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
      Specified by:
      getTechnicalInformation in interface TechnicalInformationHandler
      Returns:
      the technical information about this class
    • findNumBinsTipText

      public 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 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 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
    • getRevision

      public String getRevision()
      Returns the revision string.
      Specified by:
      getRevision in interface RevisionHandler
      Overrides:
      getRevision in class Discretize
      Returns:
      the revision
    • main

      public static void main(String[] argv)
      Main method for testing this class.
      Parameters:
      argv - should contain arguments to the filter: use -h for help