Beta

class Beta(alpha, beta, minimum=0, maximum=1, name=None, latex_label=None, unit=None, boundary=None)[source]

Bases: Prior

__init__(alpha, beta, minimum=0, maximum=1, name=None, latex_label=None, unit=None, boundary=None)[source]

Beta distribution

https://en.wikipedia.org/wiki/Beta_distribution

This wraps around https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.beta.html

Parameters:
alpha: float

first shape parameter

beta: float

second shape parameter

minimum: float

See superclass

maximum: float

See superclass

name: str

See superclass

latex_label: str

See superclass

unit: str

See superclass

boundary: str

See superclass

__call__()[source]

Overrides the __call__ special method. Calls the sample method.

Returns:
float: The return value of the sample method.

Methods

__init__(alpha, beta[, minimum, maximum, ...])

Beta distribution

cdf(*args[, xp])

Generic method to calculate CDF, can be overwritten in subclass

from_json(dct)

from_repr(string)

Generate the prior from its __repr__

get_instantiation_dict()

is_in_prior_range(val)

Returns True if val is in the prior boundaries, zero otherwise

ln_prob(*args[, xp])

Returns the log prior probability of val.

prob(*args[, xp])

Return the prior probability of val.

rescale(*args[, xp])

'Rescale' a sample from the unit line element to the appropriate Beta prior.

sample([size, random_state])

Draw a sample from the prior

to_json()

Attributes

boundary

is_fixed

Returns True if the prior is fixed and should not be used in the sampler.

latex_label

Latex label that can be used for plots.

latex_label_with_unit

If a unit is specified, returns a string of the latex label and unit

maximum

minimum

unit

width

cdf(*args, xp=None, **kwargs)[source]

Generic method to calculate CDF, can be overwritten in subclass

classmethod from_repr(string)[source]

Generate the prior from its __repr__

property is_fixed

Returns True if the prior is fixed and should not be used in the sampler. Does this by checking if this instance is an instance of DeltaFunction.

Returns:
bool: Whether it’s fixed or not!
is_in_prior_range(val)[source]

Returns True if val is in the prior boundaries, zero otherwise

Parameters:
val: Union[float, int, array_like]
Returns:
np.nan
property latex_label

Latex label that can be used for plots.

Draws from a set of default labels if no label is given

Returns:
str: A latex representation for this prior
property latex_label_with_unit

If a unit is specified, returns a string of the latex label and unit

ln_prob(*args, xp=None, **kwargs)[source]

Returns the log prior probability of val.

Parameters:
val: Union[float, int, array_like]
Returns:
Union[float, array_like]: Prior probability of val
prob(*args, xp=None, **kwargs)[source]

Return the prior probability of val.

Parameters:
val: Union[float, int, array_like]
Returns:
Union[float, array_like]: Prior probability of val
rescale(*args, xp=None, **kwargs)[source]

‘Rescale’ a sample from the unit line element to the appropriate Beta prior.

This maps to the inverse CDF. This has been analytically solved for this case.

Notes

This explicitly casts to the requested backend, but the computation will be done by scipy.

sample(size=None, *, random_state=None)[source]

Draw a sample from the prior

Parameters:
size: int or tuple of ints, optional

See numpy.random.uniform docs

Returns:
float: A random number between 0 and 1, rescaled to match the distribution of this Prior