Package weka.estimators

# Class DiscreteEstimator

java.lang.Object
weka.estimators.Estimator
weka.estimators.DiscreteEstimator

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `CapabilitiesHandler`, `OptionHandler`, `RevisionHandler`, `IncrementalEstimator`

public class DiscreteEstimator extends Estimator implements IncrementalEstimator
Simple symbolic probability estimator based on symbol counts.

Version:
  $Revision: 1.10 $
Author:
  Len Trigg (trigg@cs.waikato.ac.nz)
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`DiscreteEstimator(int numSymbols, boolean laplace)`
Constructor
`DiscreteEstimator(int nSymbols, double fPrior)`
Constructor

## Method Summary

Modifier and Type
Method
Description
`void`
`addValue(double data, double weight)`
Add a new data value to the current estimator.
`Capabilities`
`getCapabilities()`
Returns default capabilities of the classifier.
`double`
`getCount(double data)`
Get the count for a value
`int`
`getNumSymbols()`
Gets the number of symbols this estimator operates with
`double`
`getProbability(double data)`
Get a probability estimate for a value
`String`
`getRevision()`
Returns the revision string.
`double`
`getSumOfCounts()`
Get the sum of all the counts
`static void`
`main(String[] argv)`
Main method for testing this class.
`String`
`toString()`
Display a representation of this estimator

### Methods inherited from class weka.estimators.Estimator

`addValues, addValues, addValues, addValues, buildEstimator, buildEstimator, clone, debugTipText, equals, forName, getDebug, getOptions, listOptions, makeCopies, makeCopy, setDebug, setOptions, testCapabilities`

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

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

## Constructor Details

### DiscreteEstimator

public DiscreteEstimator(int numSymbols, boolean laplace)
Constructor

Parameters:
  `numSymbols` - the number of possible symbols (remember to include 0)
  `laplace` - if true, counts will be initialised to 1

### DiscreteEstimator

public DiscreteEstimator(int nSymbols, double fPrior)
Constructor

Parameters:
  `nSymbols` - the number of possible symbols (remember to include 0)
  `fPrior` - value with which counts will be initialised

## Method Details

### addValue

public void addValue(double data, double weight)
Add a new data value to the current estimator.

Specified by:
  `addValue` in interface `IncrementalEstimator`
Overrides:
  `addValue` in class `Estimator`
Parameters:
  `data` - the new data value
  `weight` - the weight assigned to the data value

### getProbability

public double getProbability(double data)
Get a probability estimate for a value

Specified by:
  `getProbability` in class `Estimator`
Parameters:
  `data` - the value to estimate the probability of
Returns:
  the estimated probability of the supplied value

### getNumSymbols

public int getNumSymbols()
Gets the number of symbols this estimator operates with

Returns:
  the number of estimator symbols

### getCount

public double getCount(double data)
Get the count for a value

Parameters:
  `data` - the value to get the count of
Returns:
  the count of the supplied value

### getSumOfCounts

public double getSumOfCounts()
Get the sum of all the counts

Returns:
  the total sum of counts

### toString

public String toString()
Display a representation of this estimator

Overrides:
  `toString` in class `Object`

### getCapabilities

public Capabilities getCapabilities()
Returns default capabilities of the classifier.

Specified by:
  `getCapabilities` in interface `CapabilitiesHandler`
Overrides:
  `getCapabilities` in class `Estimator`
Returns:
  the capabilities of this classifier
See Also:
  - `Capabilities`

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Returns:
  the revision

### main

public static void main(String[] argv)
Main method for testing this class.

Parameters:
  `argv` - should contain a sequence of integers which will be treated as symbolic.