pcntoolkit.math_functions.prior#

Attributes#

Classes#

BasePrior

Helper class that provides a standard way to create an ABC using

CenteredRandomPrior

Helper class that provides a standard way to create an ABC using

LinearPrior

Helper class that provides a standard way to create an ABC using

Prior

Helper class that provides a standard way to create an ABC using

RandomPrior

Helper class that provides a standard way to create an ABC using

Functions#

make_prior(→ BasePrior)

prior_from_args(→ BasePrior)

Module Contents#

class BasePrior(name: str = 'theta', dims: Tuple[str, Ellipsis] | str | None = None, mapping: str = 'identity', mapping_params: tuple = None, **kwargs)#

Bases: abc.ABC

Helper class that provides a standard way to create an ABC using inheritance.

__eq__(other: BasePrior)#
apply_mapping(x: Any) Any#
compile(model: pymc.Model, X: xarray.DataArray, be: xarray.DataArray, be_maps: dict[str, dict[str, int]], Y: xarray.DataArray) Any#
classmethod from_dict(dict: BasePrior.from_dict.dict, version: str | None = None) BasePrior#
abstractmethod set_name(name: str) None#
to_dict()#
abstractmethod transfer(idata: arviz.InferenceData, **kwargs) BasePrior#
abstractmethod update_data(model, X, be, be_maps, Y)#
property dims#
property has_random_effect: bool#
Abstractmethod:

mapping = 'identity'#
mapping_params = (0, 1)#
name = 'theta'#
sample_dims = ()#
class CenteredRandomPrior(mu: BasePrior | None = None, sigma: BasePrior | None = None, name: str = 'theta', dims: Tuple[str, Ellipsis] | str | None = None, mapping: str = 'identity', mapping_params: tuple[float, Ellipsis] = None, **kwargs)#

Bases: BasePrior

Helper class that provides a standard way to create an ABC using inheritance.

classmethod from_dict(dict: CenteredRandomPrior.from_dict.dict, version: str | None = None) CenteredRandomPrior#
set_name(name: str)#
to_dict()#
transfer(idata: arviz.InferenceData, **kwargs) RandomPrior#
update_data(model: pymc.Model, X: xarray.DataArray, be: xarray.DataArray, be_maps: dict[str, dict[str, int]], Y: xarray.DataArray)#
property dims#
property has_random_effect#
mu#
offsets#
sample_dims = ('observations',)#
scaled_offsets#
sigma#
sigmas#
class LinearPrior(slope: BasePrior | None = None, intercept: BasePrior | None = None, name: str = 'theta', dims: Tuple[str, Ellipsis] | str | None = None, mapping: str = 'identity', mapping_params: tuple[float, Ellipsis] = None, basis_function: pcntoolkit.math_functions.basis_function.BasisFunction = LinearBasisFunction(), **kwargs)#

Bases: BasePrior

Helper class that provides a standard way to create an ABC using inheritance.

classmethod from_dict(dict: LinearPrior.from_dict.dict, version: str | None = None) LinearPrior#
set_name(name)#
to_dict()#
transfer(idata: arviz.InferenceData, **kwargs) LinearPrior#
update_data(model: pymc.Model, X: xarray.DataArray, be: xarray.DataArray, be_maps: dict[str, dict[str, int]], Y: xarray.DataArray)#
basis_function#
property dims#
property has_random_effect#
intercept#
sample_dims = ('observations',)#
slope#
class Prior(name: str = 'theta', dims: Tuple[str, Ellipsis] | str | None = None, mapping: str = 'identity', mapping_params: tuple[float, Ellipsis] = None, dist_name: str = 'Normal', dist_params: Tuple[float | int | list[float | int], Ellipsis] = None, **kwargs)#

Bases: BasePrior

Helper class that provides a standard way to create an ABC using inheritance.

classmethod from_dict(dict: Prior.from_dict.dict, version: str | None = None)#
set_name(name: str) None#
to_dict()#
transfer(idata: arviz.InferenceData, **kwargs) Prior#
update_data(model: pymc.Model, X: xarray.DataArray, be: xarray.DataArray, be_maps: dict[str, dict[str, int]], Y: xarray.DataArray)#
dist_name = 'Normal'#
dist_params = (0, 10.0)#
property has_random_effect#
sample_dims = ()#
class RandomPrior(mu: BasePrior | None = None, sigma: BasePrior | None = None, name: str = 'theta', dims: Tuple[str, Ellipsis] | str | None = None, mapping: str = 'identity', mapping_params: tuple[float, Ellipsis] = None, **kwargs)#

Bases: BasePrior

Helper class that provides a standard way to create an ABC using inheritance.

classmethod from_dict(dict: RandomPrior.from_dict.dict, version: str | None = None) RandomPrior#
set_name(name: str)#
to_dict()#
transfer(idata: arviz.InferenceData, **kwargs) RandomPrior#
update_data(model: pymc.Model, X: xarray.DataArray, be: xarray.DataArray, be_maps: dict[str, dict[str, int]], Y: xarray.DataArray)#
property dims#
property has_random_effect#
mu#
offsets#
sample_dims = ('observations',)#
scaled_offsets#
sigma#
sigmas#
make_prior(name: str = 'theta', **kwargs) BasePrior#
prior_from_args(name: str, args: Dict[str, Any], dims: Tuple[str, Ellipsis] | str | None = None) BasePrior#
DEFAULT_PRIOR_ARGS#
PM_DISTMAP#