<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Data Preparation — Abacus Documentation</title>
    <link>/data-preparation/index.html</link>
    <description>This section explains how to prepare X and y for PanelMMM. It covers the required columns, how panel rows are organised when you use dims, and how Abacus scales channels and the target before fitting.&#xA;Pages Input Data Requirements — Required X and y inputs, column roles, alignment rules, and common input errors. Panel Data Layout — How to structure rows for no panel dims, one dim such as geo, or multiple dims such as geo and brand. Scaling and Preprocessing — What Abacus scales automatically, how Scaling works, and what to preprocess yourself.</description>
    <generator>Hugo</generator>
    <language>en-gb</language>
    <atom:link href="/data-preparation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Input Data Requirements</title>
      <link>/data-preparation/input-data-requirements/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/data-preparation/input-data-requirements/index.html</guid>
      <description>Use this page together with Panel Data Layout and Scaling and Preprocessing when you prepare a dataset for PanelMMM.&#xA;Core contract For direct Python use, PanelMMM expects:&#xA;X as a pandas.DataFrame y as a pandas.Series named target_column, or a one-dimensional NumPy array of the same length as X X must contain the date column, all media columns, and any configured control_columns or dims columns. y carries only the target values.</description>
    </item>
    <item>
      <title>Panel Data Layout</title>
      <link>/data-preparation/panel-data-layout/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/data-preparation/panel-data-layout/index.html</guid>
      <description>This page explains how PanelMMM expects panel rows to be organised in X. For the column-level contract, see Input Data Requirements.&#xA;What “panel” means in Abacus In Abacus, a panel dataset repeats the same time axis across one or more categorical dimensions in dims.&#xA;Each row represents:&#xA;one date_column value one combination of dims values, if any one set of channel and optional control values for that slice With no extra panel dims, each date appears once. With dims=(&#34;geo&#34;,), each date appears once per geo. With dims=(&#34;geo&#34;, &#34;brand&#34;), each date appears once per geo + brand combination.</description>
    </item>
    <item>
      <title>Scaling and Preprocessing</title>
      <link>/data-preparation/scaling-and-preprocessing/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/data-preparation/scaling-and-preprocessing/index.html</guid>
      <description>Abacus scales channels and the target automatically before it builds the PyMC graph for PanelMMM. This page explains what is scaled, how the Scaling configuration works, and what you still need to preprocess yourself.&#xA;What Abacus scales automatically Abacus computes scales from the reshaped xarray dataset immediately before model construction.&#xA;Variable role Automatic scaling Notes Target (y) Yes Divided by target_scale before the likelihood is built. Channels (channel_columns) Yes Divided by channel_scale before adstock and saturation. Controls (control_columns) No Controls enter the model on their original scale. Date and dims columns No These define coordinates, not modelled numeric inputs. Abacus stores the resulting scalers in the model as xarray data:</description>
    </item>
  </channel>
</rss>