**'jhplot.stat.MutualInformation'**Java class

jhplot.stat

## Class MutualInformation

- java.lang.Object
- jhplot.stat.MutualInformation

public abstract class MutualInformationextends Object

Implements common discrete Mutual Information functions. Provides: Mutual Information I(X;Y), Conditional Mutual Information I(X,Y|Z). Defaults to log_2, and so the entropy is calculated in bits.

### Method Summary

Methods Modifier and Type Method and Description `static double`

**calculateConditionalMutualInformation**(double[] firstVector, double[] secondVector, double[] conditionVector)Calculates the conditional Mutual Information I(X;Y|Z) between two random variables, conditioned on a third.`static double`

**calculateMutualInformation**(double[] firstVector, double[] secondVector)Calculates the Mutual Information I(X;Y) between two random variables.

### Method Detail

#### calculateMutualInformation

public static double calculateMutualInformation(double[] firstVector, double[] secondVector)

Calculates the Mutual Information I(X;Y) between two random variables. Uses histograms to estimate the probability distributions, and thus the information. The mutual information is bounded 0 ≤ I(X;Y) ≤ min(H(X),H(Y)). It is also symmetric, so I(X;Y) = I(Y;X).- Parameters:
`firstVector`

- Input vector (X). It is discretised to the floor of each value before calculation.`secondVector`

- Input vector (Y). It is discretised to the floor of each value before calculation.- Returns:
- The Mutual Information I(X;Y).

#### calculateConditionalMutualInformation

public static double calculateConditionalMutualInformation(double[] firstVector, double[] secondVector, double[] conditionVector)

Calculates the conditional Mutual Information I(X;Y|Z) between two random variables, conditioned on a third. Uses histograms to estimate the probability distributions, and thus the information. The conditional mutual information is bounded 0 ≤ I(X;Y) ≤ min(H(X|Z),H(Y|Z)). It is also symmetric, so I(X;Y|Z) = I(Y;X|Z).- Parameters:
`firstVector`

- Input vector (X). It is discretised to the floor of each value before calculation.`secondVector`

- Input vector (Y). It is discretised to the floor of each value before calculation.`conditionVector`

- Input vector (Z). It is discretised to the floor of each value before calculation.- Returns:
- The conditional Mutual Information I(X;Y|Z).

**SCaVis 2.2 © jWork.ORG**

**Warning:**You see this message because an access to the SCaVis documentation for third-party Java classes is denied. Guests can only view jhplot Java API. To enable the description of all Java classes of SCaVis, please request the full SCaVis membership.

If you are already a full member, please login to the SCaVis member area before visiting this documentation.