Class InfoGainAttributeEval

    • Constructor Detail

      • InfoGainAttributeEval

        public InfoGainAttributeEval()
        Constructor
    • Method Detail

      • globalInfo

        public java.lang.String globalInfo()
        Returns a string describing this attribute evaluator
        Returns:
        a description of the evaluator suitable for displaying in the explorer/experimenter gui
      • listOptions

        public java.util.Enumeration listOptions()
        Returns an enumeration describing the available options.
        Specified by:
        listOptions in interface OptionHandler
        Returns:
        an enumeration of all the available options.
      • setOptions

        public void setOptions​(java.lang.String[] options)
                        throws java.lang.Exception
        Parses a given list of options.

        Valid options are:

         -M
          treat missing values as a seperate value.
         -B
          just binarize numeric attributes instead 
          of properly discretizing them.
        Specified by:
        setOptions in interface OptionHandler
        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 WrapperSubsetEval.
        Specified by:
        getOptions in interface OptionHandler
        Returns:
        an array of strings suitable for passing to setOptions()
      • binarizeNumericAttributesTipText

        public java.lang.String binarizeNumericAttributesTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • setBinarizeNumericAttributes

        public void setBinarizeNumericAttributes​(boolean b)
        Binarize numeric attributes.
        Parameters:
        b - true=binarize numeric attributes
      • getBinarizeNumericAttributes

        public boolean getBinarizeNumericAttributes()
        get whether numeric attributes are just being binarized.
        Returns:
        true if missing values are being distributed.
      • missingMergeTipText

        public java.lang.String missingMergeTipText()
        Returns the tip text for this property
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • setMissingMerge

        public void setMissingMerge​(boolean b)
        distribute the counts for missing values across observed values
        Parameters:
        b - true=distribute missing values.
      • getMissingMerge

        public boolean getMissingMerge()
        get whether missing values are being distributed or not
        Returns:
        true if missing values are being distributed.
      • buildEvaluator

        public void buildEvaluator​(Instances data)
                            throws java.lang.Exception
        Initializes an information gain attribute evaluator. Discretizes all attributes that are numeric.
        Specified by:
        buildEvaluator in class ASEvaluation
        Parameters:
        data - set of instances serving as training data
        Throws:
        java.lang.Exception - if the evaluator has not been generated successfully
      • evaluateAttribute

        public double evaluateAttribute​(int attribute)
                                 throws java.lang.Exception
        evaluates an individual attribute by measuring the amount of information gained about the class given the attribute.
        Specified by:
        evaluateAttribute in interface AttributeEvaluator
        Parameters:
        attribute - the index of the attribute to be evaluated
        Returns:
        the info gain
        Throws:
        java.lang.Exception - if the attribute could not be evaluated
      • toString

        public java.lang.String toString()
        Describe the attribute evaluator
        Overrides:
        toString in class java.lang.Object
        Returns:
        a description of the attribute evaluator as a string
      • main

        public static void main​(java.lang.String[] args)
        Main method for testing this class.
        Parameters:
        args - the options