Metrics Reference¶
mmm_eval.metrics
¶
Accuracy metrics for MMM evaluation.
Functions¶
calculate_absolute_percentage_change(baseline_series: pd.Series, comparison_series: pd.Series) -> pd.Series
¶
Calculate the absolute percentage change between two series.
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_mean_for_singular_values_across_cross_validation_folds(fold_metrics: list[AccuracyMetricResults], metric_name: AccuracyMetricNames) -> float
¶
Calculate the mean of the fold metrics for single values.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fold_metrics | list[AccuracyMetricResults] | List of metric result objects | required |
metric_name | AccuracyMetricNames | Name of the metric attribute | required |
Returns:
Type | Description |
---|---|
float | Mean value as float |
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_means_for_series_across_cross_validation_folds(folds_of_series: list[pd.Series]) -> pd.Series
¶
Calculate the mean of pandas Series across folds.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
folds_of_series | list[Series] | List of pandas Series (e.g., ROI series from different folds) | required |
Returns:
Type | Description |
---|---|
Series | Mean Series with same index as input series |
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_std_for_singular_values_across_cross_validation_folds(fold_metrics: list[AccuracyMetricResults], metric_name: AccuracyMetricNames) -> float
¶
Calculate the standard deviation of the fold metrics for single values.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fold_metrics | list[AccuracyMetricResults] | List of metric result objects | required |
metric_name | AccuracyMetricNames | Name of the metric attribute | required |
Returns:
Type | Description |
---|---|
float | Standard deviation value as float |
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_stds_for_series_across_cross_validation_folds(folds_of_series: list[pd.Series]) -> pd.Series
¶
Calculate the standard deviation of pandas Series across folds.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
folds_of_series | list[Series] | List of pandas Series (e.g., ROI series from different folds) | required |
Returns:
Type | Description |
---|---|
Series | Standard deviation Series with same index as input series |
Source code in mmm_eval/metrics/accuracy_functions.py
Modules¶
accuracy_functions
¶
Accuracy metrics for MMM evaluation.
Classes¶
Functions¶
calculate_absolute_percentage_change(baseline_series: pd.Series, comparison_series: pd.Series) -> pd.Series
¶
Calculate the absolute percentage change between two series.
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_mean_for_singular_values_across_cross_validation_folds(fold_metrics: list[AccuracyMetricResults], metric_name: AccuracyMetricNames) -> float
¶
Calculate the mean of the fold metrics for single values.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fold_metrics | list[AccuracyMetricResults] | List of metric result objects | required |
metric_name | AccuracyMetricNames | Name of the metric attribute | required |
Returns:
Type | Description |
---|---|
float | Mean value as float |
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_means_for_series_across_cross_validation_folds(folds_of_series: list[pd.Series]) -> pd.Series
¶
Calculate the mean of pandas Series across folds.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
folds_of_series | list[Series] | List of pandas Series (e.g., ROI series from different folds) | required |
Returns:
Type | Description |
---|---|
Series | Mean Series with same index as input series |
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_std_for_singular_values_across_cross_validation_folds(fold_metrics: list[AccuracyMetricResults], metric_name: AccuracyMetricNames) -> float
¶
Calculate the standard deviation of the fold metrics for single values.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fold_metrics | list[AccuracyMetricResults] | List of metric result objects | required |
metric_name | AccuracyMetricNames | Name of the metric attribute | required |
Returns:
Type | Description |
---|---|
float | Standard deviation value as float |
Source code in mmm_eval/metrics/accuracy_functions.py
calculate_stds_for_series_across_cross_validation_folds(folds_of_series: list[pd.Series]) -> pd.Series
¶
Calculate the standard deviation of pandas Series across folds.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
folds_of_series | list[Series] | List of pandas Series (e.g., ROI series from different folds) | required |
Returns:
Type | Description |
---|---|
Series | Standard deviation Series with same index as input series |
Source code in mmm_eval/metrics/accuracy_functions.py
exceptions
¶
metric_models
¶
Classes¶
AccuracyMetricNames
¶
AccuracyMetricResults
¶
Bases: MetricResults
Define the results of the accuracy metrics.
populate_object_with_metrics(actual: pd.Series, predicted: pd.Series) -> AccuracyMetricResults
classmethod
¶Populate the object with the calculated metrics.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
actual | Series | The actual values | required |
predicted | Series | The predicted values | required |
Returns:
Type | Description |
---|---|
AccuracyMetricResults | AccuracyMetricResults object with the metrics |
Source code in mmm_eval/metrics/metric_models.py
to_df() -> pd.DataFrame
¶Convert the accuracy metric results to a long DataFrame format.
Source code in mmm_eval/metrics/metric_models.py
CrossValidationMetricNames
¶
CrossValidationMetricResults
¶
Bases: MetricResults
Define the results of the cross-validation metrics.
to_df() -> pd.DataFrame
¶Convert the cross-validation metric results to a long DataFrame format.
Source code in mmm_eval/metrics/metric_models.py
MetricNamesBase
¶
Bases: Enum
Base class for metric name enums.
MetricResults
¶
Bases: BaseModel
Define the results of the metrics.
add_pass_fail_column(df: pd.DataFrame) -> pd.DataFrame
¶Add a pass/fail column to the DataFrame based on metric thresholds.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
df | DataFrame | DataFrame with general_metric_name and metric_value columns | required |
Returns:
Type | Description |
---|---|
DataFrame | DataFrame with additional metric_pass column |
Source code in mmm_eval/metrics/metric_models.py
to_df() -> pd.DataFrame
¶ PerturbationMetricNames
¶
PerturbationMetricResults
¶
Bases: MetricResults
Define the results of the perturbation metrics.
to_df() -> pd.DataFrame
¶Convert the perturbation metric results to a long DataFrame format.
Source code in mmm_eval/metrics/metric_models.py
RefreshStabilityMetricNames
¶
RefreshStabilityMetricResults
¶
Bases: MetricResults
Define the results of the refresh stability metrics.
to_df() -> pd.DataFrame
¶Convert the refresh stability metric results to a long DataFrame format.
Source code in mmm_eval/metrics/metric_models.py
TestResultDFAttributes
¶
threshold_constants
¶
Classes¶
AccuracyThresholdConstants
¶
Constants for the accuracy threshold.
CrossValidationThresholdConstants
¶
Constants for the cross-validation threshold.
PerturbationThresholdConstants
¶
Constants for the perturbation threshold.
RefreshStabilityThresholdConstants
¶
Constants for the refresh stability threshold.