Marketing mix models are a powerful tool for understanding the impact of different marketing channels on sales. By building a marketing mix model, marketers can quantify the contribution of each channel to their overall sales, and then use this information to optimize their budget allocation.
So far, I have written an entire series about building marketing mix models, yet I still owe you an article about how to use these models to optimize media spending. Today is your lucky day since in this article, I will show you just that!
If you are new to marketing mix modeling, you can start with my introductory article:
Before we can optimize something, we have to build a model first. We will do it very quickly, so we can get to the main section of this article as soon as possible.
First, let us load some data. I will use the same dataset as in my old articles.
import pandas as pd
from sklearn.model_selection import cross_val_score, TimeSeriesSplit
data = pd.read_csv(
X = data.drop(columns=['Sales'])
y = data['Sales']
The dataset looks like this:
The logic behind this table is the following: imagine you work in a company that sells some product. You can see the weekly sales of this product in the column Sales. In order to boost these…