Package weka.classifiers.trees.j48

# Class NBTreeNoSplit

java.lang.Object
weka.classifiers.trees.j48.ClassifierSplitModel
weka.classifiers.trees.j48.NBTreeNoSplit

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `RevisionHandler`

public final class NBTreeNoSplit extends ClassifierSplitModel
Class implementing a "no-split"-split (leaf node) for naive bayes trees.

Version:
  $Revision: 10531 $
Author:
  Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `NBTreeNoSplit()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final void`
  `buildClassifier(Instances instances)`
  Build the no-split node
  `double`
  `classProb(int classIndex, Instance instance, int theSubset)`
  Return the probability for a class value
  `static double`
  `crossValidate(NaiveBayesUpdateable fullModel, Instances trainingSet, Random r)`
  Utility method for fast 5-fold cross validation of a naive bayes model
  `Discretize`
  `getDiscretizer()`
  Return the discretizer used at this node
  `double`
  `getErrors()`
  Return the errors made by the naive bayes model at this node
  `NaiveBayesUpdateable`
  `getNaiveBayesModel()`
  Get the naive bayes model at this node
  `String`
  `getRevision()`
  Returns the revision string.
  `final String`
  `leftSide(Instances instances)`
  Does nothing because no condition has to be satisfied.
  `final String`
  `rightSide(int index, Instances instances)`
  Does nothing because no condition has to be satisfied.
  `final String`
  `sourceExpression(int index, Instances data)`
  Returns a string containing java source code equivalent to the test made at this node.
  `String`
  `toString()`
  Return a textual description of the node
  `final double[]`
  `weights(Instance instance)`
  Always returns null because there is only one subset.
  `final int`
  `whichSubset(Instance instance)`
  Always returns 0 because only there is only one subset.

  ### Methods inherited from class weka.classifiers.trees.j48.ClassifierSplitModel

  `checkModel, classifyInstance, classProbLaplace, clone, codingCost, distribution, dumpLabel, dumpModel, numSubsets, resetDistribution, setDistribution, sourceClass, split`

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

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

- ## Constructor Details

  - ### NBTreeNoSplit

    public NBTreeNoSplit()

- ## Method Details

  - ### buildClassifier

    public final void buildClassifier(Instances instances) throws Exception
    Build the no-split node
    Specified by:
      `buildClassifier` in class `ClassifierSplitModel`
    Parameters:
      `instances` - an `Instances` value
    Throws:
      `Exception` - if an error occurs

  - ### getErrors

    public double getErrors()
    Return the errors made by the naive bayes model at this node
    Returns:
      the number of errors made

  - ### getDiscretizer

    public Discretize getDiscretizer()
    Return the discretizer used at this node
    Returns:
      a `Discretize` value

  - ### getNaiveBayesModel

    public NaiveBayesUpdateable getNaiveBayesModel()
    Get the naive bayes model at this node
    Returns:
      a `NaiveBayesUpdateable` value

  - ### whichSubset

    public final int whichSubset(Instance instance)
    Always returns 0 because only there is only one subset.
    Specified by:
      `whichSubset` in class `ClassifierSplitModel`

  - ### weights

    public final double[] weights(Instance instance)
    Always returns null because there is only one subset.
    Specified by:
      `weights` in class `ClassifierSplitModel`

  - ### leftSide

    public final String leftSide(Instances instances)
    Does nothing because no condition has to be satisfied.
    Specified by:
      `leftSide` in class `ClassifierSplitModel`
    Parameters:
      `instances` - the data.

  - ### rightSide

    public final String rightSide(int index, Instances instances)
    Does nothing because no condition has to be satisfied.
    Specified by:
      `rightSide` in class `ClassifierSplitModel`

  - ### sourceExpression

    public final String sourceExpression(int index, Instances data)
    Returns a string containing java source code equivalent to the test made at this node. The instance being tested is called "i".
    Specified by:
      `sourceExpression` in class `ClassifierSplitModel`
    Parameters:
      `index` - index of the nominal value tested
      `data` - the data containing instance structure info
    Returns:
      a value of type 'String'

  - ### classProb

    public double classProb(int classIndex, Instance instance, int theSubset) throws Exception
    Return the probability for a class value
    Overrides:
      `classProb` in class `ClassifierSplitModel`
    Parameters:
      `classIndex` - the index of the class value
      `instance` - the instance to generate a probability for
      `theSubset` - the subset to consider
    Returns:
      a probability
    Throws:
      `Exception` - if an error occurs

  - ### toString

    public String toString()
    Return a textual description of the node
    Overrides:
      `toString` in class `Object`
    Returns:
      a `String` value

  - ### crossValidate

    public static double crossValidate(NaiveBayesUpdateable fullModel, Instances trainingSet, Random r) throws Exception
    Utility method for fast 5-fold cross validation of a naive bayes model
    Parameters:
      `fullModel` - a `NaiveBayesUpdateable` value
      `trainingSet` - an `Instances` value
      `r` - a `Random` value
    Returns:
      a `double` value
    Throws:
      `Exception` - if an error occurs

  - ### getRevision

    public String getRevision()
    Returns the revision string.
    Returns:
      the revision