metasyn.distribution.normal

Module implementing normal distributions.

Classes

ContinuousNormalDistribution(mean, sd)

Normal distribution for floating point type.

ContinuousNormalFitter(privacy)

Fitter for continuous normal distribution.

ContinuousTruncatedNormalDistribution(lower, ...)

Truncated normal distribution for floating point type.

ContinuousTruncatedNormalFitter(privacy)

Fitter for continuous truncated normal fitter.

DiscreteNormalDistribution(mean, sd)

Normal discrete distribution.

DiscreteNormalFitter(privacy)

Fitter for discrete normal distribution.

DiscreteTruncatedNormalDistribution(lower, ...)

Truncated normal discrete distribution.

DiscreteTruncatedNormalFitter(privacy)

Fitter for discrete truncated normal distribution.

LogNormalDistribution(mean, sd)

Log-normal distribution for floating point type.

LogNormalFitter(privacy)

Fitter for log normal distribution.

class metasyn.distribution.normal.ContinuousNormalDistribution(mean, sd)

Bases: ScipyDistribution

Normal distribution for floating point type.

This class implements the normal/gaussian distribution and takes the average and standard deviation as initialization input.

Parameters:
  • mean (float) – Mean of the normal distribution.

  • sd (float) – Standard deviation of the normal distribution.

Examples

>>> NormalDistribution(mean=1.3, sd=4.5)
name

core.normal

unique

False

version

1.0

var_type

continuous

scipy_class = <scipy.stats._continuous_distns.norm_gen object>
classmethod default_distribution(var_type=None)

Get a distribution with default parameters.

Return type:

BaseDistribution

name: str = 'core.normal'

The identifier for the implemented distribution

var_type: Union[str, Sequence[str]] = 'continuous'

The variable type of the distribution

class metasyn.distribution.normal.ContinuousNormalFitter(privacy)

Bases: ScipyFitter

Fitter for continuous normal distribution.

Parameters:

privacy (BasePrivacy)

dist_class

<class ‘metasyn.distribution.normal.ContinuousNormalDistribution’>

version

1.0

var_type

continuous

privacy

none

distribution

alias of ContinuousNormalDistribution

class metasyn.distribution.normal.ContinuousTruncatedNormalDistribution(lower, upper, mean, sd)

Bases: ScipyDistribution

Truncated normal distribution for floating point type.

Parameters:
  • lower (float) – Lower bound of the truncated normal distribution.

  • upper (float) – Upper bound of the truncated normal distribution.

  • mean (float) – Mean of the non-truncated normal distribution.

  • sd (float) – Standard deviation of the non-truncated normal distribution.

Examples

>>> TruncatedNormalDistribution(lower=1.0, upper=3.5, mean=2.3, sd=5)
name

core.truncated_normal

unique

False

version

1.0

var_type

continuous

scipy_class = <scipy.stats._continuous_distns.truncnorm_gen object>
classmethod default_distribution(var_type=None)

Get a distribution with default parameters.

Return type:

BaseDistribution

name: str = 'core.truncated_normal'

The identifier for the implemented distribution

var_type: Union[str, Sequence[str]] = 'continuous'

The variable type of the distribution

class metasyn.distribution.normal.ContinuousTruncatedNormalFitter(privacy)

Bases: BaseFitter

Fitter for continuous truncated normal fitter.

Parameters:

privacy (BasePrivacy)

dist_class

<class ‘metasyn.distribution.normal.ContinuousTruncatedNormalDistribution’>

version

1.0

var_type

continuous

privacy

none

distribution

alias of ContinuousTruncatedNormalDistribution

class metasyn.distribution.normal.DiscreteNormalDistribution(mean, sd)

Bases: ContinuousNormalDistribution

Normal discrete distribution.

This class implements the normal/gaussian distribution and takes the average and standard deviation as initialization input.

Parameters:
  • mean (float) – Mean of the normal distribution.

  • sd (float) – Standard deviation of the normal distribution.

Examples

>>> DiscreteNormalDistribution(mean=2.4, sd=1.2)
name

core.normal

unique

False

version

1.0

var_type

discrete

draw()

Draw a random element from the fitted distribution.

classmethod default_distribution(var_type=None)

Get a distribution with default parameters.

name: str = 'core.normal'

The identifier for the implemented distribution

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

The variable type of the distribution

class metasyn.distribution.normal.DiscreteNormalFitter(privacy)

Bases: ScipyFitter

Fitter for discrete normal distribution.

Parameters:

privacy (BasePrivacy)

dist_class

<class ‘metasyn.distribution.normal.DiscreteNormalDistribution’>

version

1.0

var_type

discrete

privacy

none

distribution

alias of DiscreteNormalDistribution

class metasyn.distribution.normal.DiscreteTruncatedNormalDistribution(lower, upper, mean, sd)

Bases: ContinuousTruncatedNormalDistribution

Truncated normal discrete distribution.

Parameters:
  • lower (float) – Lower bound of the truncated normal distribution.

  • upper (float) – Upper bound of the truncated normal distribution.

  • mean (float) – Mean of the non-truncated normal distribution.

  • sd (float) – Standard deviation of the non-truncated normal distribution.

Examples

>>> DiscreteTruncatedNormalDistribution(lower=1.2, upper=4.5, mean=2.3, sd=4.5)
name

core.truncated_normal

unique

False

version

1.0

var_type

discrete

draw()

Draw a random element from the fitted distribution.

classmethod default_distribution(var_type=None)

Get a distribution with default parameters.

name: str = 'core.truncated_normal'

The identifier for the implemented distribution

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

The variable type of the distribution

class metasyn.distribution.normal.DiscreteTruncatedNormalFitter(privacy)

Bases: ContinuousTruncatedNormalFitter

Fitter for discrete truncated normal distribution.

Parameters:

privacy (BasePrivacy)

dist_class

<class ‘metasyn.distribution.normal.DiscreteTruncatedNormalDistribution’>

version

1.0

var_type

discrete

privacy

none

distribution

alias of DiscreteTruncatedNormalDistribution

class metasyn.distribution.normal.LogNormalDistribution(mean, sd)

Bases: ScipyDistribution

Log-normal distribution for floating point type.

This class implements the log-normal mu and sigma as initialization input.

Parameters:
  • mean (float) – Controls the mean of the distribution.

  • sd (float) – Controls the width of the distribution.

Examples

>>> LogNormalDistribution(mean=-2.0, sd=4.5)
name

core.lognormal

unique

False

version

1.0

var_type

continuous

scipy_class = <scipy.stats._continuous_distns.lognorm_gen object>
classmethod default_distribution(var_type=None)

Get a distribution with default parameters.

Return type:

BaseDistribution

name: str = 'core.lognormal'

The identifier for the implemented distribution

var_type: Union[str, Sequence[str]] = 'continuous'

The variable type of the distribution

class metasyn.distribution.normal.LogNormalFitter(privacy)

Bases: BaseFitter

Fitter for log normal distribution.

Parameters:

privacy (BasePrivacy)

dist_class

<class ‘metasyn.distribution.normal.LogNormalDistribution’>

version

1.0

var_type

continuous

privacy

none

distribution

alias of LogNormalDistribution