generar_datos_saturados#

pymc_marketing.customer_choice.synthetic_data.generate_saturated_data(total_sales_mu, total_sales_sigma, treatment_time, n_observations, market_shares_before, market_shares_after, market_share_labels, random_seed=None)[fuente]#

Generar datos sintéticos para el modelo MVITS, asumiendo que el mercado está saturado.

Esta función genera datos sintéticos para el modelo MVITS, asumiendo que el mercado está saturado. Esto hace la suposición de que las ventas totales están distribuidas normalmente alrededor de un nivel promedio de ventas y que las cuotas de mercado son constantes a lo largo del tiempo.

Parámetros:
total_ventas_mu: int

El nivel promedio de ventas en el mercado.

total_ventas_sigma: float

La desviación estándar de las ventas en el mercado.

tiempo_tratamiento: int

El momento en el que se introduce el nuevo modelo.

n_observaciones: int

El número de observaciones a generar.

participaciones_de_mercado_antes: lista[float]

Las cuotas de mercado antes de la introducción del nuevo modelo.

participaciones_de_mercado_despues: list[float]

Las cuotas de mercado después de la introducción del nuevo modelo.

etiquetas_de_cuota_de_mercado: lista[str]

Las etiquetas para las cuotas de mercado.

semilla_aleatoria: np.random.Generator | int, opcional

El generador de números aleatorios a utilizar.

Devoluciones:
data: pd.DataFrame

Los datos sintéticos generados.

Ejemplos

Generar algunos datos sintéticos para el modelo MVITS:

import numpy as np

from pymc_marketing.customer_choice import generate_saturated_data

seed = sum(map(ord, "Saturated Market Data"))
rng = np.random.default_rng(seed)

scenario = {
    "total_sales_mu": 1_000,
    "total_sales_sigma": 5,
    "treatment_time": 40,
    "n_observations": 100,
    "market_shares_before": [[0.7, 0.3, 0]],
    "market_shares_after": [[0.65, 0.25, 0.1]],
    "market_share_labels": ["competitor", "own", "new"],
    "random_seed": rng,
}

data = generate_saturated_data(**scenario)