Package weka.estimators

# Class KDConditionalEstimator

java.lang.Object
weka.estimators.KDConditionalEstimator

All Implemented Interfaces:
  `RevisionHandler`, `ConditionalEstimator`

public class KDConditionalEstimator extends Object implements ConditionalEstimator
Conditional probability estimator for a numeric domain conditional upon a discrete domain (utilises separate kernel estimators for each discrete conditioning value).

Version:
  $Revision: 1.8 $
Author:
  Len Trigg (trigg@cs.waikato.ac.nz)

## Constructor Summary

Constructors
Constructor
Description
`KDConditionalEstimator(int numCondSymbols, double precision)`
Constructor

## Method Summary

Modifier and Type
Method
Description
`void`
`addValue(double data, double given, double weight)`
Add a new data value to the current estimator.
`Estimator`
`getEstimator(double given)`
Get a probability estimator for a value
`double`
`getProbability(double data, double given)`
Get a probability estimate for a value
`String`
`getRevision()`
Returns the revision string.
`static void`
`main(String[] argv)`
Main method for testing this class.
`String`
`toString()`
Display a representation of this estimator

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

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

## Constructor Details

### KDConditionalEstimator

public KDConditionalEstimator(int numCondSymbols, double precision)
Constructor

Parameters:
  `numCondSymbols` - the number of conditioning symbols
  `precision` - the precision to which numeric values are given. For example, if the precision is stated to be 0.1, the values in the interval (0.25,0.35] are all treated as 0.3.

## Method Details

### addValue

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

Specified by:
  `addValue` in interface `ConditionalEstimator`
Parameters:
  `data` - the new data value
  `given` - the new value that data is conditional upon
  `weight` - the weight assigned to the data value

### getEstimator

public Estimator getEstimator(double given)
Get a probability estimator for a value

Specified by:
  `getEstimator` in interface `ConditionalEstimator`
Parameters:
  `given` - the new value that data is conditional upon
Returns:
  the estimator for the supplied value given the condition

### getProbability

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

Specified by:
  `getProbability` in interface `ConditionalEstimator`
Parameters:
  `data` - the value to estimate the probability of
  `given` - the new value that data is conditional upon
Returns:
  the estimated probability of the supplied value

### toString

public String toString()
Display a representation of this estimator

Overrides:
  `toString` in class `Object`

### 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 pairs of integers which will be treated as numeric, symbolic.