weka.estimators
Class DiscreteEstimator

java.lang.Object
  extended by weka.estimators.Estimator
      extended by weka.estimators.DiscreteEstimator
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, CapabilitiesHandler, OptionHandler, IncrementalEstimator

public class DiscreteEstimator
extends Estimator
implements IncrementalEstimator

Simple symbolic probability estimator based on symbol counts.

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

Constructor Summary
DiscreteEstimator(int numSymbols, boolean laplace)
          Constructor
DiscreteEstimator(int nSymbols, double fPrior)
          Constructor
 
Method Summary
 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
 double getSumOfCounts()
          Get the sum of all the counts
static void main(java.lang.String[] argv)
          Main method for testing this class.
 java.lang.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 Detail

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 Detail

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 java.lang.String toString()
Display a representation of this estimator

Overrides:
toString in class java.lang.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

main

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

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