MMM.compute_mean_contributions_over_time#

MMM.compute_mean_contributions_over_time()[source]#

Get the mean contribution of each component over time in original scale.

Extracts channel, control, seasonality, and intercept contributions from the posterior, computes the mean over MCMC samples (chain and draw), and converts to original scale by multiplying by the target scaler stored in idata.constant_data["target_scale"].

This method does not require add_original_scale_contribution_variable() to have been called.

Returns:
pd.DataFrame

Wide-format DataFrame with one row per observation (date x extra dims). Columns include:

  • date – date coordinate

  • Extra dimension columns (e.g. geo) when the model is multidimensional

  • One column per channel (named after channel coordinate labels)

  • One column per control variable (if present)

  • yearly_seasonality (if yearly seasonality is enabled)

  • intercept

Raises:
ValueError

If the model has not been fitted (no idata).

See also

add_original_scale_contribution_variable

Pre-compute original-scale deterministics inside the model graph.

MMMIDataWrapper.get_contributions

Full posterior contributions as an xr.Dataset.

Examples

mmm.fit(X, y)
contributions_df = mmm.compute_mean_contributions_over_time()