niamoto.core.plugins.transformers.distribution package

Submodules

niamoto.core.plugins.transformers.distribution.binned_distribution module

niamoto.core.plugins.transformers.distribution.categorical_distribution module

Plugin for creating categorical distributions.

class niamoto.core.plugins.transformers.distribution.categorical_distribution.CategoricalDistributionParams(*, source='occurrences', field, categories=<factory>, labels=<factory>, include_percentages=False)

Bases: BaseModel

Parameters for categorical distribution plugin

Parameters:
  • source (str)

  • field (str)

  • categories (List[int | float | str])

  • labels (List[str])

  • include_percentages (bool)

source: str
field: str
categories: List[int | float | str]
labels: List[str]
include_percentages: bool
classmethod validate_labels_length(v, info)

Validate that labels length matches categories length if both are provided.

Parameters:
  • v (List[str])

  • info (ValidationInfo)

Return type:

List[str]

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class niamoto.core.plugins.transformers.distribution.categorical_distribution.CategoricalDistributionConfig(*, plugin='categorical_distribution', source=None, params=<factory>)

Bases: PluginConfig

Configuration for categorical distribution plugin

Parameters:
  • plugin (str)

  • source (str | None)

  • params (Dict[str, Any])

plugin: str
params: Dict[str, Any]
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class niamoto.core.plugins.transformers.distribution.categorical_distribution.CategoricalDistribution(db, registry=None)

Bases: TransformerPlugin

Plugin for creating categorical distributions

config_model

alias of CategoricalDistributionConfig

output_structure: Dict[str, str] | None = {'categories': 'list', 'counts': 'list', 'labels': 'list', 'percentages': 'list'}
validate_config(config)

Validate configuration.

Parameters:

config (Dict[str, Any])

Return type:

Dict[str, Any]

transform(data, config)

Transform data according to configuration.

Note: The service layer is responsible for loading the correct data source. This transformer is a pure function that only transforms the provided data.

Parameters:
  • data (DataFrame)

  • config (Dict[str, Any])

Return type:

Dict[str, Any]

niamoto.core.plugins.transformers.distribution.time_series_analysis module

Module contents