Source code for abacus.mde_researcher._experiment_structures

from pydantic.dataclasses import dataclass, Field


[docs] @dataclass class BaseSplitElement: """Dataclass with data params for experiment calculations Args: group_sizes (tuple): tuple with group sizes. Should have control group size on the 0 index position and target group size on the 1 index position split_number (int): params with number of split """ group_sizes: tuple split_number: int control_group_size: int = Field(init=False) target_group_size: int = Field(init=False) def __post_init__(self): self.control_group_size = self.group_sizes[0] self.target_group_size = self.group_sizes[1]
[docs] @dataclass class MdeAlphaExperiment(BaseSplitElement): """Dataclass for I type error calculations.""" metric_name: str = Field(init=False)
[docs] @dataclass class MdeBetaExperiment(MdeAlphaExperiment): """Dataclass for II type error calculations.""" inject: float = Field(init=False)