weka.classifiers.trees.ht

## Class ConditionalSufficientStats

- java.lang.Object
- - weka.classifiers.trees.ht.ConditionalSufficientStats

- All Implemented Interfaces:
    java.io.Serializable
  Direct Known Subclasses:
    GaussianConditionalSufficientStats, NominalConditionalSufficientStats

      public abstract class ConditionalSufficientStats
      extends java.lang.Object
      implements java.io.Serializable

  Records sufficient stats for an attribute
  Version:
    $Revision: 9705 $
  Author:
    Richard Kirkby (rkirkby@cs.waikato.ac.nz), Mark Hall (mhall{[at]}pentaho{[dot]}com)
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ConditionalSufficientStats()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract SplitCandidate` | `bestSplit(SplitMetric splitMetric, java.util.Map<java.lang.String,WeightMass> preSplitDist, java.lang.String attName)` Return the best split
    `abstract double` | `probabilityOfAttValConditionedOnClass(double attVal, java.lang.String classVal)` Return the probability of an attribute value conditioned on a class value
    `abstract void` | `update(double attVal, java.lang.String classVal, double weight)` Update this stat with the supplied attribute value and class value

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ConditionalSufficientStats

          public ConditionalSufficientStats()

  - ### Method Detail

    - #### update

          public abstract void update(double attVal,
                                      java.lang.String classVal,
                                      double weight)

      Update this stat with the supplied attribute value and class value
      Parameters:
        `attVal` - the value of the attribute
        `classVal` - the class value
        `weight` - the weight of this observation

    - #### probabilityOfAttValConditionedOnClass

          public abstract double probabilityOfAttValConditionedOnClass(double attVal,
                                                                       java.lang.String classVal)

      Return the probability of an attribute value conditioned on a class value
      Parameters:
        `attVal` - the attribute value to compute the conditional probability for
        `classVal` - the class value
      Returns:
        the probability

    - #### bestSplit

          public abstract SplitCandidate bestSplit(SplitMetric splitMetric,
                                                   java.util.Map<java.lang.String,WeightMass> preSplitDist,
                                                   java.lang.String attName)

      Return the best split
      Parameters:
        `splitMetric` - the split metric to use
        `preSplitDist` - the distribution of class values prior to splitting
        `attName` - the name of the attribute being considered for splitting
      Returns:
        the best split for the attribute