Class MakeIndicator

java.lang.Object
weka.filters.Filter
weka.filters.unsupervised.attribute.MakeIndicator
All Implemented Interfaces:
Serializable, CapabilitiesHandler, CapabilitiesIgnorer, CommandlineRunnable, OptionHandler, RevisionHandler, WeightedAttributesHandler, WeightedInstancesHandler, StreamableFilter, UnsupervisedFilter

A filter that creates a new dataset with a Boolean attribute replacing a nominal attribute. In the new dataset, a value of 1 is assigned to an instance that exhibits a value in the given range of attribute values, and a value of 0 is assigned to an instance that does not. The Boolean attribute is coded as numeric by default.

Valid options are:

 -C <col>
  Sets the attribute index.
 
 -V <index1,index2-index4,...>
  Specify the list of values to indicate. First and last are
  valid indexes (default last)
 
 -N <index>
  Set if new Boolean attribute nominal.
 
Version:
$Revision: 14508 $
Author:
Eibe Frank (eibe@cs.waikato.ac.nz)
See Also:
  • Constructor Details

    • MakeIndicator

      public MakeIndicator()
      Constructor
  • Method Details

    • getCapabilities

      public Capabilities getCapabilities()
      Returns the Capabilities of this filter.
      Specified by:
      getCapabilities in interface CapabilitiesHandler
      Overrides:
      getCapabilities in class Filter
      Returns:
      the capabilities of this object
      See Also:
    • setInputFormat

      public boolean setInputFormat(Instances instanceInfo) throws Exception
      Sets the format of the input instances.
      Overrides:
      setInputFormat in class Filter
      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:
      UnsupportedAttributeTypeException - the selecte attribute is not nominal
      UnsupportedAttributeTypeException - the selecte attribute has fewer than two values.
      Exception - if the inputFormat can't be set successfully
    • input

      public boolean input(Instance instance)
      Input an instance for filtering. The instance is processed and made available for output immediately.
      Overrides:
      input in class Filter
      Parameters:
      instance - the input instance
      Returns:
      true if the filtered instance may now be collected with output().
      Throws:
      IllegalStateException - if no input format has been set.
    • listOptions

      public Enumeration<Option> listOptions()
      Returns an enumeration describing the available options.
      Specified by:
      listOptions in interface OptionHandler
      Overrides:
      listOptions in class Filter
      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:

       -C <col>
        Sets the attribute index.
       
       -V <index1,index2-index4,...>
        Specify the list of values to indicate. First and last are
        valid indexes (default last)
       
       -N <index>
        Set if new Boolean attribute nominal.
       
      Specified by:
      setOptions in interface OptionHandler
      Overrides:
      setOptions in class Filter
      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 Filter
      Returns:
      an array of strings suitable for passing to setOptions
    • globalInfo

      public String globalInfo()
      Returns:
      a description of the filter suitable for displaying in the explorer/experimenter gui
    • attributeIndexTipText

      public String attributeIndexTipText()
      Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui
    • getAttributeIndex

      public String getAttributeIndex()
      Get the index of the attribute used.
      Returns:
      the index of the attribute
    • setAttributeIndex

      public void setAttributeIndex(String attIndex)
      Sets index of the attribute used.
      Parameters:
      attIndex - the index of the attribute
    • getValueRange

      public Range getValueRange()
      Get the range containing the indicator values.
      Returns:
      the range containing the indicator values
    • valueIndicesTipText

      public String valueIndicesTipText()
      Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui
    • getValueIndices

      public String getValueIndices()
      Get the indices of the indicator values.
      Returns:
      the indices of the indicator values
    • setValueIndices

      public void setValueIndices(String range)
      Sets indices of the indicator values.
      Parameters:
      range - the string representation of the indicator value indices
      See Also:
    • setValueIndex

      public void setValueIndex(int index)
      Sets index of the indicator value.
      Parameters:
      index - the index of the indicator value
    • setValueIndicesArray

      public void setValueIndicesArray(int[] indices)
      Set which attributes are to be deleted (or kept if invert is true)
      Parameters:
      indices - an array containing indexes of attributes to select. Since the array will typically come from a program, attributes are indexed from 0.
    • numericTipText

      public String numericTipText()
      Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui
    • setNumeric

      public void setNumeric(boolean bool)
      Sets if the new Attribute is to be numeric.
      Parameters:
      bool - true if new Attribute is to be numeric
    • getNumeric

      public boolean getNumeric()
      Check if new attribute is to be numeric.
      Returns:
      true if new attribute is to be numeric
    • getRevision

      public String getRevision()
      Returns the revision string.
      Specified by:
      getRevision in interface RevisionHandler
      Overrides:
      getRevision in class Filter
      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