OrdinalMIEstimator

OrdinalMIEstimator#

class infomeasure.estimators.mutual_information.OrdinalMIEstimator(*data, cond=None, embedding_dim: int = None, step_size: int = 1, stable: bool = False, offset: int = 0, base: int | float | str = 'e', **kwargs)[source]

Bases: BaseOrdinalMIEstimator, MutualInformationEstimator

Estimator for the Ordinal mutual information.

Attributes:
*dataarray_like, shape (n_samples,)

The data used to estimate the mutual information. You can pass an arbitrary number of data arrays as positional arguments.

embedding_dimint

The size of the permutation patterns.

offsetint, optional

Number of positions to shift the data arrays relative to each other. Delay/lag/shift between the variables. Default is no shift.

*symbolsarray_like, shape (n_samples,)

The symbolized data used to estimate the mutual information.

Raises:
ValueError
ValueError

If the embedding_dim is negative or not an integer.

ValueError

If offset and embedding_dim are such that the data is too small.

Notes

  • The ordinality will be determined via numpy.argsort(). There is no normalize option, as this would not influence the order of the data.

  • If embedding_dim is set to 1, the mutual information is always 0.