metasyn.distribution.categorical

Module implementing categorical distributions.

Classes

MultinoulliDistribution(labels, probs)

Categorical distribution using labels and probabilities.

MultinoulliFitter(privacy)

Fitter for multinoulli distribution.

class metasyn.distribution.categorical.MultinoulliDistribution(labels, probs)

Bases: BaseDistribution

Categorical distribution using labels and probabilities.

This class represents a multinoulli (categorical) distribution. It is used in cases where there are multiple potential outcomes, each with a specified probability. The class stores the labels for each category and their corresponding probabilities.

Parameters:
  • labels (list of str) – The labels for each category in the distribution, representing the possible outcomes.

  • probs (list of float) – The probabilities or frequencies of each category. These will be normalized internally.

Examples

>>> MultinoulliDistribution(labels=["a", "b", "b"], probs=[0.1, 0.3, 0.6])
>>> MultinoulliDistribution(labels=[1, 3, 6], probs=[0.3, 0.4, 0.3])
name

core.multinoulli

unique

False

version

1.0

var_type

[‘categorical’, ‘discrete’, ‘string’]

draw()

Draw a random element from the fitted distribution.

information_criterion(values)

Get the BIC value for a particular set of values.

Parameters:

values (array_like) – Values to determine the BIC value of.

Return type:

float

classmethod default_distribution(var_type=None)

Get a distribution with default parameters.

Parameters:

var_type (str | None)

name: str = 'core.multinoulli'

The identifier for the implemented distribution

var_type: Union[str, Sequence[str]] = ['categorical', 'discrete', 'string']

The variable type of the distribution

class metasyn.distribution.categorical.MultinoulliFitter(privacy)

Bases: BaseFitter

Fitter for multinoulli distribution.

Parameters:

privacy (BasePrivacy)

dist_class

<class ‘metasyn.distribution.categorical.MultinoulliDistribution’>

version

1.0

var_type

[‘categorical’, ‘string’, ‘discrete’]

privacy

none

distribution

alias of MultinoulliDistribution