transformación_media#
Módulo para aplicar transformaciones de medios a datos de medios.
Ejemplos#
Cree una transformación de medios para canales de medios en línea y fuera de línea:
from pymc_marketing.mmm import (
GeometricAdstock,
HillSaturation,
MediaTransformation,
MichaelisMentenSaturation,
)
# Shared media transformation for all offline media channels
offline_media_transform = MediaTransformation(
adstock=GeometricAdstock(l_max=15),
saturation=HillSaturation(),
adstock_first=True,
)
# Shared media transformation for all online media channels
online_media_transform = MediaTransformation(
adstock=GeometricAdstock(l_max=10),
saturation=MichaelisMentenSaturation(),
adstock_first=False,
),
)
Cree una configuración de medios combinada para canales de medios en línea y fuera de línea:
from pymc_marketing.mmm import (
MediaConfig,
MediaConfigList,
)
media_configs: MediaConfigList(
[
MediaConfig(
name="offline",
columns=["TV", "Radio"],
media_transformation=offline_media_transform,
),
MediaConfig(
name="online",
columns=["Facebook", "Instagram", "YouTube", "TikTok"],
media_transformation=online_media_transform,
),
]
)
Aplica la transformación de medios a los datos de medios en el modelo PyMC:
import pymc as pm
import pandas as pd
df: pd.DataFrame = ...
media_columns = media_configs.media_values
coords = {
"date": df["week"],
"media": media_columns,
}
with pm.Model(coords=coords) as model:
media_data = pm.Data(
"media_data", df.loc[:, media_columns].to_numpy(), dims=("date", "media")
)
transformed_media_data = media_configs(
media_data, core_dim="date", media_dim="media"
)
Clases
|
Configuración para una transformación de medios a ciertos canales de medios. |
|
Contenedor para una lista de configuraciones de medios que se aplicarán a los datos de medios. |
|
Envoltura para aplicar la transformación de adstock y saturación a los datos de medios. |