weka.estimators

## Interface ConditionalEstimator

• All Superinterfaces:
RevisionHandler
All Known Implementing Classes:
DDConditionalEstimator, DKConditionalEstimator, DNConditionalEstimator, KDConditionalEstimator, KKConditionalEstimator, NDConditionalEstimator, NNConditionalEstimator

```public interface ConditionalEstimator
extends RevisionHandler```
Interface for conditional probability estimators. Example code:

` `

``````   NNConditionalEstimator newEst = new NNConditionalEstimator();

// Create 50 random points and add them
Random r = new Random(seed);
for(int i = 0; i < 50; i++) {
int x = Math.abs(r.nextInt() % 100);
int y = Math.abs(r.nextInt() % 100);
System.out.println("# " + x + "  " + y);
}

// Pick a random conditional value
int cond = Math.abs(r.nextInt() % 100);
System.out.println("## Conditional = " + cond);

// Print the probabilities conditional on that value
Estimator result = newEst.getEstimator(cond);
for(int i = 0; i <= 100; i+= 5) {
System.out.println(" " + i + "  " + result.getProbability(i));
}
``````
` `
Version:
\$Revision: 1.7 \$
Author:
Len Trigg (trigg@cs.waikato.ac.nz)
• ### Method Summary

All Methods
Modifier and Type Method and 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 for a value conditional on another value
• ### Methods inherited from interface weka.core.RevisionHandler

`getRevision`
• ### Method Detail

```void addValue(double data,
double given,
double weight)```
Add a new data value to the current estimator.
Parameters:
`data` - the new data value
`given` - the new value that data is conditional upon
`weight` - the weight assigned to the data value
• #### getEstimator

`Estimator getEstimator(double given)`
Get a probability estimator for a value
Parameters:
`given` - the new value that data is conditional upon
Returns:
the estimator for the supplied value given the condition
• #### getProbability

```double getProbability(double data,
double given)```
Get a probability for a value conditional on another value
Parameters:
`data` - the value to estimate the probability of
`given` - the new value that data is conditional upon
Returns:
the estimator for the supplied value given the condition