Se proporcionan datos simulados como ejemplo para cada tipo y formato de datos en las siguientes secciones:
CSV
Para cargar los datos de CSV simulados con CsvDataLoader, haz lo siguiente:
Asocia los nombres de las columnas con los tipos de variables. Los tipos de variables requeridos son
time,controls,kpi,revenue_per_kpi,mediaymedia_spend. Para obtener la definición de cada variable, consulta Cómo recopilar y organizar tus datos.coord_to_columns = load.CoordToColumns( time='time', controls=['GQV', 'Discount', 'Competitor_Sales'], kpi='conversions', revenue_per_kpi='revenue_per_conversion', media=[ 'Channel0_impression', 'Channel1_impression', 'Channel2_impression', 'Channel3_impression', 'Channel4_impression', 'Channel5_impression', ], media_spend=[ 'Channel0_spend', 'Channel1_spend', 'Channel2_spend', 'Channel3_spend', 'Channel4_spend', 'Channel5_spend', ], )Asocia las variables de medios y las inversiones en medios con los nombres de los canales designados que deseas mostrar en el resultado de dos páginas. En el siguiente ejemplo,
Channel0_impressionyChannel0_spendestán conectados al mismo canal,Channel0.correct_media_to_channel = { 'Channel0_impression': 'Channel0', 'Channel1_impression': 'Channel1', 'Channel2_impression': 'Channel2', 'Channel3_impression': 'Channel3', 'Channel4_impression': 'Channel4', 'Channel5_impression': 'Channel5', } correct_media_spend_to_channel = { 'Channel0_spend': 'Channel0', 'Channel1_spend': 'Channel1', 'Channel2_spend': 'Channel2', 'Channel3_spend': 'Channel3', 'Channel4_spend': 'Channel4', 'Channel5_spend': 'Channel5', }Carga los datos con
CsvDataLoader:loader = load.CsvDataLoader( csv_path=f'/{PATH}/{FILENAME}.csv', kpi_type='non_revenue', coord_to_columns=coord_to_columns, media_to_channel=correct_media_to_channel, media_spend_to_channel=correct_media_spend_to_channel, currency_code='USD', ) data = loader.load()Aquí ocurre lo siguiente:
kpi_typees'revenue'o'non_revenue'.currency_code(opcional) es un código de moneda de 3 letras establecido por la norma ISO 4217 (como'USD','EUR'o'GBP') que especifica la unidad monetaria de la inversión y los ingresos. Cuando se configura, los visualizadores de informes le dan formato automáticamente a los valores monetarios con el símbolo de moneda correspondiente.PATHes la ruta de acceso a la ubicación del archivo de datos.FILENAMEes el nombre de tu archivo de datos.
Conjunto de datos Xarray
Para cargar el conjunto de datos Xarray simulado con XrDatasetDataLoader, haz lo siguiente:
Carga los datos con
pickle:import pickle with open(f'/{PATH}/{FILENAME}.pkl', 'r') as fh: XrDataset=pickle.load(fh)Aquí ocurre lo siguiente:
PATHes la ruta de acceso a la ubicación del archivo de datos.FILENAMEes el nombre de tu archivo de datos.
Pasa el conjunto de datos a
XrDatasetDataLoader. Usa el argumentoname_mappingpara asociar las coordenadas y los arrays. Procede a la asociación si los nombres incluidos en el conjunto de datos de entrada no coinciden con los nombres requeridos. Los nombres de coordenadas requeridos sontime,control_variableymedia_channel. Los nombres de las variables de datos requeridos sonkpi,revenue_per_kpi,controls,mediaymedia_spend.loader = load.XrDatasetDataLoader( XrDataset, kpi_type='non_revenue', name_mapping={'channel': 'media_channel', 'control': 'control_variable', 'conversions': 'kpi', 'revenue_per_conversion': 'revenue_per_kpi', 'control_value': 'controls', 'spend': 'media_spend'}, ) data = loader.load()Donde:
kpi_typees'revenue'o'non_revenue'.
Ndarray de NumPy
Para cargar ndarrays de numPy directamente, usa NDArrayInputDataBuilder:
Crea los datos en ndarrays de numPy separados.
import numpy as np kpi_nd = np.array([[1, 2, 3]]) controls_nd = np.array([[[1, 2], [3, 4], [5, 6]]]) revenue_per_kpi_nd = np.array([[1, 2, 3]]) media_nd = np.array([[[1, 2], [3, 4], [5, 6]]]) media_spend_nd = np.array([[[1, 2], [3, 4], [5, 6]]])Usa un
NDArrayInputDataBuilderpara establecer horarios y asignar nombres de canales o dimensiones según sea necesario en los datos de entrada de Meridian. Para conocer la definición de cada variable, consulta Cómo recopilar y organizar tus datos.from meridian.data import nd_array_input_data_builder as data_builder builder = ( data_builder.NDArrayInputDataBuilder(kpi_type='non_revenue') ) builder.time_coords = ['2024-01-02', '2024-01-03', '2024-01-01'] builder.media_time_coords = ['2024-01-02', '2024-01-03', '2024-01-01'] builder = ( builder .with_kpi(kpi_nd) .with_revenue_per_kpi(revenue_per_kpi_nd) .with_controls( controls_nd, control_names=["control0", "control1"]) .with_media( m_nd=media_nd, ms_nd=media_spend_nd, media_channels=["channel0", "channel1"] ) ) data = builder.build()Aquí ocurre lo siguiente:
kpi_typees'revenue'o'non_revenue'.
DataFrames de Pandas o cualquier otro formato de datos
Para cargar otros formatos de datos simulados (como excel) usando DataFrameInputDataBuilder, haz lo siguiente:
Lee los datos (como una hoja de cálculo de
excel) en uno o másDataFramede Pandas.import pandas as pd df = pd.read_excel( 'https://github.com/google/meridian/raw/main/meridian/data/simulated_data/xlsx/national_media.xlsx', engine='openpyxl', )Usa
DataFrameInputDataBuilderpara asociar los nombres de las columnas con los tipos de variables requeridos en los datos de entrada de Meridian. Para conocer la definición de cada variable, consulta Cómo recopilar y organizar tus datos.from meridian.data import data_frame_input_data_builder as data_builder builder = data_builder.DataFrameInputDataBuilder( kpi_type='non_revenue', default_kpi_column="conversions", default_revenue_per_kpi_column="revenue_per_conversion", ) builder.currency_code = 'USD' builder = ( builder .with_kpi(df) .with_revenue_per_kpi(df) .with_controls(df, control_cols=["GQV", "Discount", "Competitor_Sales"]) ) channels = ["Channel0", "Channel1", "Channel2", "Channel3", "Channel4", "Channel5"] builder = builder.with_media( df, media_cols=[f"{channel}_impression" for channel in channels], media_spend_cols=[f"{channel}_spend" for channel in channels], media_channels=channels, ) data = builder.build()Aquí ocurre lo siguiente:
kpi_typees'revenue'o'non_revenue'.currency_codees el código de moneda establecido por la norma ISO 4217 opcional (p. ej.,'USD').
A continuación, puedes crear tu modelo.