BDC-team-1/Descriptive_statistics/debug.ipynb
2024-03-14 23:02:50 +00:00

149 lines
60 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 83,
"id": "718d4e6d-b90a-4955-90ee-c1518246c07c",
"metadata": {},
"outputs": [
{
"name": "stdin",
"output_type": "stream",
"text": [
"Choisissez le type de compagnie : sport ? musique ? musee ? sport\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"File path : projet-bdc2324-team1/0_Input/Company_5/customerplus_cleaned.csv\n",
"File path : projet-bdc2324-team1/0_Input/Company_5/campaigns_information.csv\n",
"File path : projet-bdc2324-team1/0_Input/Company_5/products_purchased_reduced.csv\n",
"File path : projet-bdc2324-team1/0_Input/Company_5/target_information.csv\n"
]
}
],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import os\n",
"import s3fs\n",
"import re\n",
"import warnings\n",
"\n",
"# Ignore warning\n",
"warnings.filterwarnings('ignore')\n",
"\n",
"exec(open('../0_KPI_functions.py').read())\n",
"exec(open('plot.py').read())\n",
"\n",
"# Create filesystem object\n",
"S3_ENDPOINT_URL = \"https://\" + os.environ[\"AWS_S3_ENDPOINT\"]\n",
"fs = s3fs.S3FileSystem(client_kwargs={'endpoint_url': S3_ENDPOINT_URL})\n",
"\n",
"companies = {'musee' : ['1', '2', '3', '4'], # , '101'\n",
" 'sport': ['5'],\n",
" 'musique' : ['10', '11', '12', '13', '14']}\n",
"\n",
"\n",
"type_of_activity = input('Choisissez le type de compagnie : sport ? musique ? musee ?')\n",
"list_of_comp = companies[type_of_activity] \n",
"\n",
"# Load files\n",
"customer, campaigns_kpi, campaigns_brut, tickets, products = load_files(list_of_comp)\n",
"\n",
"# Identify anonymous customer for each company and remove them from our datasets\n",
"outlier_list = outlier_detection(tickets, list_of_comp)\n",
"\n",
"# Identify valid customer (customer who bought tickets after starting date or received mails after starting date)\n",
"customer_valid_list = valid_customer_detection(products, campaigns_brut)\n",
"\n",
"databases = [customer, campaigns_kpi, campaigns_brut, tickets, products]\n",
"\n",
"for dataset in databases:\n",
" dataset['customer_id'] = dataset['customer_id'].apply(lambda x: remove_elements(x, outlier_list))# remove outlier\n",
" dataset = dataset[dataset['customer_id'].isin(customer_valid_list)] # keep only valid customer\n",
" #print(f'shape of {dataset} : ', dataset.shape)\n",
"\n",
"# Identify customer who bought during the period of y\n",
"customer_target_period = identify_purchase_during_target_periode(products)\n",
"customer['has_purchased_target_period'] = np.where(customer['customer_id'].isin(customer_target_period), 1, 0)"
]
},
{
"cell_type": "code",
"execution_count": 84,
"id": "97d1ceba-0ff9-4e36-87ab-7ebca2857798",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAHFCAYAAAAOmtghAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABO+ElEQVR4nO3deVgVZf8/8PeIrMoiKJshAipugChmRArugrmSWyYuaQ+uKZmKPuZaqKmZuaC5Z26JmorhCrgEGopZiUuGogYhooKorPfvD3+cb8cDcgbOETzP+3Vd57qYe2bu+czheHg7c8+MJIQQICIiItIR1Sq7ACIiIiJNYrghIiIincJwQ0RERDqF4YaIiIh0CsMNERER6RSGGyIiItIpDDdERESkUxhuiIiISKcw3BAREZFOYbipZGfPnkWfPn1Qr149GBoawsbGBt7e3vjkk0+Ulqtfvz7efffdSqpSOzIzMzFw4EBYW1tDkiT07t37pcsXFRXhu+++Q6dOnVC7dm3o6+vD2toa7777Lg4cOICioiKt1PnFF19g3759WulbV8XExECSJOzevbtStr9p0yZIkoSbN28q2vz8/ODn51fmujdv3oQkSdi0aZPW6ivNtm3bsGzZsle+XV02e/ZsSJKk1KbuZyEvLw/BwcGws7ODnp4eWrRooZ0iq6jLly9j9uzZSv+OXhfVK7uA/2WRkZHo2bMn/Pz8sGjRItjZ2SE1NRUJCQnYsWMHlixZUtklatW8efOwd+9ebNiwAS4uLrC0tCx12WfPnqF37944cuQIBg4ciNWrV8PW1hb37t1DVFQU+vXrh507d6JXr14ar/OLL77Ae++9V2b4oqpt1apVlV1CmbZt24bff/8dEydOrOxSdMbIkSPRrVu3cq27evVqrFmzBt988w1atWqFmjVrari6qu3y5cuYM2cO/Pz8UL9+/couRxaGm0q0aNEiODk54fDhw6he/f9+FQMHDsSiRYteeT2FhYUoKCiAoaHhK9ne77//DhcXFwwePLjMZUNCQnD48GFs3rwZQUFBSvP69u2LTz/9FE+fPtVWqa+1J0+ewMTEpLLLqHRNmzat7BKoErzxxht44403yrXu77//DmNjY4wbN05j9Tx9+hTGxsYa608b8vPzVY52vW54WqoS3b9/H7Vr11YKNsWqVSv5VxMVFYWWLVvC2NgYjRs3xoYNG5Tm37t3D2PGjEHTpk1Rs2ZNWFtbo0OHDjh16pTScsWH3hctWoT58+fDyckJhoaGiI6OBgAkJCSgZ8+esLS0hJGRETw9PbFr1y619iszMxNjxoxB3bp1YWBgAGdnZ8yYMQO5ublK2z527BiSkpIgSRIkSUJMTEyJ/aWlpWHdunXo2rWrSrAp1rBhQ7i7uwMo+ZQE8H+nSv69ncTERLz77ruwtraGoaEh7O3t0b17d9y5cwcAIEkScnJysHnzZkWd/z6c/fvvv6NXr16oVasWjIyM0KJFC2zevLnE7W7btg1Tp06FnZ0datasiR49euCff/5BdnY2PvroI9SuXRu1a9fG8OHD8fjxY6U+hBBYtWoVWrRoAWNjY9SqVQvvvfce/vrrL6Xl/Pz80Lx5c5w8eRJvv/02TExMMGLECADAiRMn4OfnBysrKxgbG6NevXoIDAzEkydPSnxPAeDTTz+Fubk5CgsLFW3jx4+HJEn48ssvFW33799HtWrV8M033yitn5+fjxkzZsDe3h5mZmbo1KkTrl69qrKdDRs2wMPDA0ZGRrC0tESfPn2QlJRUal3/Fh8fDx8fHxgZGcHe3h6hoaHIz89XWa6kUxF///03+vfvD1NTU5ibm2PAgAFIS0tTa7vFn7Po6GiMHj0atWvXhpWVFfr27Yu///5badmioiIsWrQIjRs3hqGhIaytrREUFKT4nBXXFxkZiVu3bik+a2X9gVGn3+K+mzdvjlOnTuGtt96CsbEx6tati5kzZyr9boHnp2Lmz5+v6LNOnToYPnw47t27p7Rc8anysr6TSlL8HfDll19i4cKFqF+/PoyNjeHn54dr164hPz8f06ZNg729PczNzdGnTx+kp6cr9bFz50506dIFdnZ2MDY2RpMmTTBt2jTk5OQoLVfSaSl1SJKEdevW4enTp4rfRfGpymfPniE0NBROTk4wMDBA3bp1MXbsWDx8+LDE92jPnj3w9PSEkZER5syZU+o2y/o+Kq5r3LhxWLNmDRo1agRDQ0M0bdoUO3bsUOlPzvfTd999h08++QR169aFoaEh1q1bh379+gEA2rdvr/IeVHmCKs3IkSMFADF+/HgRHx8v8vLySl3W0dFRvPHGG6Jp06Ziy5Yt4vDhw6Jfv34CgIiNjVUsd+XKFTF69GixY8cOERMTIw4ePCg+/PBDUa1aNREdHa1YLjk5WQAQdevWFe3btxe7d+8WR44cEcnJyeLEiRPCwMBAtG3bVuzcuVNERUWJYcOGCQBi48aNL92np0+fCnd3d1GjRg2xePFiceTIETFz5kxRvXp1ERAQIIQQ4tmzZyIuLk54enoKZ2dnERcXJ+Li4sSjR49K7HPbtm0CgFi9erVa7+vGjRsFAJGcnKzUHh0dLQAo3ofHjx8LKysr4eXlJXbt2iViY2PFzp07RXBwsLh8+bIQQoi4uDhhbGwsAgICFHX+8ccfivfa1NRUuLi4iC1btojIyEgxaNAgAUAsXLhQZbuOjo5i2LBhIioqSoSHh4uaNWuK9u3bi86dO4vJkyeLI0eOiIULFwo9PT0xfvx4pdpHjRol9PX1xSeffCKioqLEtm3bROPGjYWNjY1IS0tTLOfr6yssLS2Fg4OD+Oabb0R0dLSIjY0VycnJwsjISHTu3Fns27dPxMTEiO+//14MGTJEPHjwoNT3MioqSgAQP//8s6KtcePGwtjYWHTu3FnRtnPnTgFA8b4V73P9+vXF4MGDRWRkpNi+fbuoV6+eaNiwoSgoKFCs+8UXXwgAYtCgQSIyMlJs2bJFODs7C3Nzc3Ht2rWX/q7/+OMPYWJiIpo2bSq2b98ufvzxR9G1a1dRr149lc+Ar6+v8PX1VUw/efJENGnSRJibm4tvvvlGHD58WEyYMEGxblmf9eLPmbOzsxg/frw4fPiwWLdunahVq5Zo37690rIfffSRACDGjRun+P3XqVNHODg4iHv37in2xcfHR9ja2io+a3FxcS+tQZ1+i/fdyspK2Nvbi+XLlyv2FYAYO3asYrnCwkLRrVs3UaNGDTFnzhxx9OhRsW7dOlG3bl3RtGlT8eTJE8Wy6n4nlaT4+8fR0VH06NFDHDx4UGzdulXY2NiIRo0aiSFDhogRI0aIn376SfFvpUePHkp9zJs3T3z11VciMjJSxMTEiPDwcOHk5KTy3s+aNUu8+Kfuxc9CSeLi4kRAQIAwNjZW/C7S09NFUVGR6Nq1q6hevbqYOXOmOHLkiFi8eLGoUaOG8PT0FM+ePVN6j+zs7ISzs7PYsGGDiI6OFufOnStxe+p8HwkhBADh4OCg+Mzv379fdOvWTQAQP/zwg2I5ud9PdevWFe+9957Yv3+/OHjwoEhLS1P821y5cqXSe/A6YLipRBkZGeKdd94RAAQAoa+vL95++20RFhYmsrOzlZZ1dHQURkZG4tatW4q2p0+fCktLS/Gf//yn1G0UFBSI/Px80bFjR9GnTx9Fe/GXi4uLi0qoaty4sfD09BT5+flK7e+++66ws7MThYWFpW4vPDxcABC7du1Sal+4cKEAII4cOaJo8/X1Fc2aNSu1r2ILFiwQAERUVFSZywqhfrhJSEgQAMS+ffte2l+NGjXE0KFDVdoHDhwoDA0NRUpKilK7v7+/MDExEQ8fPlTa7otfzhMnThQAxIQJE5Tae/fuLSwtLRXTcXFxAoBYsmSJ0nK3b98WxsbGYsqUKYo2X19fAUAcP35cadndu3cLAOLixYsv3dcX5eTkCAMDAzF37lwhhBB37twRAMTUqVOFsbGx4ot81KhRwt7eXrFe8T4XB9piu3btEgAUf7QfPHigCI//lpKSIgwNDcX777//0voGDBggjI2NlQJeQUGBaNy4cZnhZvXq1QKA+PHHH5X6HDVqlKxwM2bMGKX2RYsWCQAiNTVVCCFEUlJSicudPXtWABDTp09XtHXv3l04Ojq+dLvF5PRb/LkoaV+rVaum+F7Zvn27ACAiIiKUlvvll18EALFq1SpFW3m/k4T4v+8fDw8Ppe+TZcuWCQCiZ8+eSssX/1sp7T9ARUVFIj8/X8TGxgoA4tdff1XMK2+4EUKIoUOHiho1aii1FQf+RYsWKbUXB/y1a9cq2hwdHYWenp64evVqmdtS9/sIQKmf+QYNGija5H4/tWvXTmVbP/zwg9J35uuEp6UqkZWVFU6dOoVffvkFCxYsQK9evXDt2jWEhobCzc0NGRkZSsu3aNEC9erVU0wbGRmhUaNGuHXrltJy4eHhaNmyJYyMjFC9enXo6+vj+PHjJR7m79mzJ/T19RXTf/75J65cuaIYB1NQUKB4BQQEIDU1tcTTCsVOnDiBGjVq4L333lNqHzZsGADg+PHj6r05r0CDBg1Qq1YtTJ06FeHh4bh8+bKs9U+cOIGOHTvCwcFBqX3YsGF48uQJ4uLilNpfvNqtSZMmAIDu3burtGdmZipOTR08eBCSJOGDDz5Q+n3Y2trCw8ND5XRerVq10KFDB6W2Fi1awMDAAB999BE2b96scjqrNCYmJvD29saxY8cAAEePHoWFhQU+/fRT5OXl4fTp0wCAY8eOoVOnTirr9+zZU2m6+NRh8Wc2Li4OT58+VXw+ijk4OKBDhw5lfl6io6PRsWNH2NjYKNr09PQwYMCAMvctOjoapqamKjW+//77Za77b2XtY/Gp3hf38c0330STJk3K/W9Cbr+l7WtRURFOnjwJ4PlnzcLCAj169FD6rLVo0QK2trYqnzV1v5NKExAQoHQK/mX/JgAgJSVF0fbXX3/h/fffh62tLfT09KCvrw9fX18AUPuUZnmcOHECgOr73q9fP9SoUUPlfXd3d0ejRo3K7FfO91Fpn/k///xTcQpL7vdTYGBgmTW+ThhuqgAvLy9MnToVP/zwA/7++29MmjQJN2/eVBlUbGVlpbKuoaGh0kDapUuXYvTo0WjTpg0iIiIQHx+PX375Bd26dStxwK2dnZ3S9D///AMAmDx5MvT19ZVeY8aMAQCV0PVv9+/fh62trco5bmtra1SvXh33798v491QVfzlmZycLHvdlzE3N0dsbCxatGiB6dOno1mzZrC3t8esWbNKHLPxovv376u8fwBgb2+vmP9vL14NZmBg8NL2Z8+eAXj+OxFCwMbGRuV3Eh8fr/L7KKkmFxcXHDt2DNbW1hg7dixcXFzg4uKCr7/+usz97NSpE+Lj45GTk4Njx46hQ4cOsLKyQqtWrXDs2DEkJycjOTm5xHDz4me2eLB68Wex+D0q7X0s6/NS/Hl7UUltJa377z8Qctb9N23vY2nk9vuyfS1e9p9//sHDhw9hYGCg8llLS0tT+ayp8530MuX9N/H48WO0bdsWZ8+exfz58xETE4NffvkFe/bsAQCtXlxw//59VK9eHXXq1FFqlyQJtra2Ku97Sb+fksj5PnrZZ754+3K/n9St83XBq6WqGH19fcyaNQtfffUVfv/9d9nrb926FX5+fli9erVSe3Z2donLvxhCateuDQAIDQ1F3759S1zH1dW11O1bWVnh7NmzEEIo9Z2eno6CggJF/3K0b98e+vr62LdvH4KDg8tc3sjICAAUA5iLlRTK3NzcsGPHDgghcOnSJWzatAlz586FsbExpk2b9tLtWFlZITU1VaW9eDBpefa1JLVr14YkSTh16lSJV7K92Fba4Mm2bduibdu2KCwsREJCAr755htMnDgRNjY2GDhwYKnb79ixI2bOnImTJ0/i+PHjmDVrlqL9yJEjcHJyUkzLVfzHsbT3saz30MrKqsQBwOoMCrayssK5c+fKta4c/97HF6/aUWcfNdVv8X9c/q14X4v7Kh4UHRUVVeI2TU1Ny1Wrpp04cQJ///03YmJiFEdrAKgM6NUGKysrFBQU4N69e0oBRwiBtLQ0tG7dWml5OYOZ1f0+etlnvvh3Kff76XW/OupFPHJTiUr64AH/d0i1OGHLIUmSyh+7S5cuqRyCLI2rqysaNmyIX3/9FV5eXiW+XvYF17FjRzx+/FjlpndbtmxRzJfL1tYWI0eOxOHDhxX9vOjGjRu4dOkSACjux1A8XWz//v2lbkOSJHh4eOCrr76ChYUFLly4oJhX2v9EO3bsqPiS/bctW7bAxMQEb731llr7V5Z3330XQgjcvXu3xN+Hm5ubrP709PTQpk0brFy5EgCU9rUkb775JszMzLBs2TKkpaWhc+fOAJ4f0UlMTMSuXbvQtGnTcn1evb29YWxsjK1btyq137lzR3FY/WXat2+P48ePK/3hLiwsxM6dO8vcdvv27ZGdna3yudi2bZuMPShb8SnCF/fxl19+QVJSktI+yjnqIadfAKXua7Vq1dCuXTsAzz9r9+/fR2FhYYmftZf9x+ZVKv5D/OJ33Zo1a7S+7eL39cX3PSIiAjk5OeX6jnvRy76PAJT6mXdxcVEEXU18P714FPJ1wiM3lahr165444030KNHDzRu3BhFRUW4ePEilixZgpo1a+Ljjz+W3ee7776LefPmYdasWfD19cXVq1cxd+5cODk5oaCgQK0+1qxZA39/f3Tt2hXDhg1D3bp1kZmZiaSkJFy4cAE//PBDqesGBQVh5cqVGDp0KG7evAk3NzecPn0aX3zxBQICAko8daGOpUuX4q+//sKwYcNw+PBh9OnTBzY2NsjIyMDRo0exceNG7NixA+7u7mjdujVcXV0xefJkFBQUoFatWti7d69ifEixgwcPYtWqVejduzecnZ0hhMCePXvw8OFDxR9w4Pn/pmJiYnDgwAHY2dnB1NQUrq6umDVrFg4ePIj27dvjs88+g6WlJb7//ntERkZi0aJFMDc3L9e+vsjHxwcfffQRhg8fjoSEBLRr1w41atRAamoqTp8+DTc3N4wePfqlfYSHh+PEiRPo3r076tWrh2fPniku2S3rd6KnpwdfX18cOHAATk5OcHFxUdRlaGiI48ePY8KECeXaNwsLC8ycORPTp09HUFAQBg0ahPv372POnDkwMjJSHCUqzX//+1/s378fHTp0wGeffQYTExOsXLlS5XLgkgQFBeGrr75CUFAQPv/8czRs2BCHDh3C4cOHy7UvpXF1dcVHH32Eb775BtWqVYO/vz9u3ryJmTNnwsHBAZMmTVIs6+bmhj179mD16tVo1aoVqlWrBi8vrwr3Czz/n/zo0aORkpKCRo0a4dChQ/j2228xevRoxanfgQMH4vvvv0dAQAA+/vhjvPnmm9DX18edO3cQHR2NXr16oU+fPhp9f8rj7bffRq1atRAcHIxZs2ZBX18f33//PX799Vetb7tz587o2rUrpk6diqysLPj4+ODSpUuYNWsWPD09MWTIkHL1q+73EfD8qEuHDh0wc+ZM1KhRA6tWrcKVK1eULgfXxPdT8+bNAQBr166FqakpjIyM4OTkVOLpyCqn8sYy086dO8X7778vGjZsKGrWrCn09fVFvXr1xJAhQ5Qu/RPi+aj77t27q/Tx4qj/3NxcMXnyZFG3bl1hZGQkWrZsKfbt2yeGDh2qdBVG8dUKX375ZYm1/frrr6J///7C2tpa6OvrC1tbW9GhQwcRHh5e5n7dv39fBAcHCzs7O1G9enXh6OgoQkNDlS6RLK5dnaulihUUFIjNmzeLDh06CEtLS1G9enVRp04d4e/vL7Zt26Z01cW1a9dEly5dhJmZmahTp44YP368iIyMVBr5f+XKFTFo0CDh4uIijI2Nhbm5uXjzzTfFpk2blLZ78eJF4ePjI0xMTAQApff7t99+Ez169BDm5ubCwMBAeHh4qFxlU3w1wr8v0xTi/662+eWXX5Tai6/u+PelvEIIsWHDBtGmTRtRo0YNYWxsLFxcXERQUJBISEgo8z2Ni4sTffr0EY6OjsLQ0FBYWVkJX19fsX///jLfdyGE+PrrrwUAMWrUKKX2zp07CwAq/ZS2z8Wfuxffo3Xr1gl3d3dhYGAgzM3NRa9evRSX3JflzJkz4q233hKGhobC1tZWfPrpp2Lt2rVlXi0lxPOrvwIDA0XNmjWFqampCAwMFD///LOsq6Ve/P29eFWeEM8vsV64cKFo1KiR0NfXF7Vr1xYffPCBuH37ttK6mZmZ4r333hMWFhZCkiSVq3xepG6/xZ+LmJgY4eXlJQwNDYWdnZ2YPn26ylWR+fn5YvHixcLDw0MYGRmJmjVrisaNG4v//Oc/4vr164rl1P1OKklp3z9y/q38/PPPwtvbW5iYmIg6deqIkSNHigsXLqj87jR9tZQQz68Kmzp1qnB0dBT6+vrCzs5OjB49WuW2CqW9RyVR9/sI///y/VWrVgkXFxehr68vGjduLL7//nuVPivy/VRs2bJlwsnJSejp6an176KqkIQQ4hVmKSIiesX8/PyQkZFRrnF8VLVIkoSxY8dixYoVlV1KlcYxN0RERKRTGG6IiIhIp/C0FBEREekUHrkhIiIincJwQ0RERDqF4YaIiIh0yv/cTfyKiorw999/w9TUVOduN01ERKSrhBDIzs6Gvb290gNXS/I/F27+/vtvlaekEhER0evh9u3bKs9Te9H/XLgpfi7S7du3YWZmVsnVEBERkTqysrLg4OCg1gNc/+fCTfGpKDMzM4YbIiKi14w6Q0o4oJiIiIh0CsMNERER6RSGGyIiItIpDDdERESkUxhuiIiISKcw3BAREZFOYbghIiIincJwQ0RERDqF4YaIiIh0CsMNERER6RSGGyIiItIpDDdERESkUxhuiIiISKcw3BAREZFOYbghIiIinVK9sgvQNfWnRVZ2CURERJXq5oLulbp9HrkhIiIincJwQ0RERDqF4YaIiIh0CsMNERER6RSGGyIiItIpDDdERESkUxhuiIiISKcw3BAREZFOYbghIiIincJwQ0RERDqF4YaIiIh0CsMNERER6RSGGyIiItIpDDdERESkUxhuiIiISKcw3BAREZFOqdRws3r1ari7u8PMzAxmZmbw9vbGTz/99NJ1YmNj0apVKxgZGcHZ2Rnh4eGvqFoiIiJ6HVRquHnjjTewYMECJCQkICEhAR06dECvXr3wxx9/lLh8cnIyAgIC0LZtWyQmJmL69OmYMGECIiIiXnHlREREVFVVr8yN9+jRQ2n6888/x+rVqxEfH49mzZqpLB8eHo569eph2bJlAIAmTZogISEBixcvRmBg4KsomYiIiKq4KjPmprCwEDt27EBOTg68vb1LXCYuLg5dunRRauvatSsSEhKQn59f4jq5ubnIyspSehEREZHuUuvITa1atSBJklodZmZmyirgt99+g7e3N549e4aaNWti7969aNq0aYnLpqWlwcbGRqnNxsYGBQUFyMjIgJ2dnco6YWFhmDNnjqyaiIiI6PWlVrgpPg2kDa6urrh48SIePnyIiIgIDB06FLGxsaUGnBdDlhCixPZioaGhCAkJUUxnZWXBwcFBQ9UT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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"lazy_customer_plot(campaigns_kpi, type_of_activity)"
]
},
{
"cell_type": "code",
"execution_count": 95,
"id": "5113b91e-2b2e-4d96-822f-bbb590f4b62d",
"metadata": {},
"outputs": [],
"source": [
"exec(open('plot.py').read())"
]
},
{
"cell_type": "code",
"execution_count": 96,
"id": "28def014-5186-4df6-b222-0b260539f838",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAk0AAAHFCAYAAADv8c1wAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABWiklEQVR4nO3dd1gUV/828Hulg7AKCitKhNjFrtGgMWAnijVPUEGsURN7i5EYBU3EFkvUqIlRsWuMJVbsogRFRLFiiYIVxIJrQ0A47x/+mNcVkFlc2AXvz3Xt9bgzZ2a+M5wn3JxpCiGEABERERG9UzF9F0BERERUGDA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBHpWXBwMBQKBczNzXHjxo0s8z08PFCjRg09VAYcPnwYCoUCf//9t162r624uDi0a9cOtra2UCgUGDFiRI5tnz9/junTp6N27dqwsbGBtbU1KlSoAG9vb4SGhuZp+wqFAoGBgXkrPo+02eeiaNeuXQV+zOnDZazvAojotZSUFPz4449YtWqVvksptEaOHImIiAgsW7YMKpUKZcqUybZdeno6WrdujXPnzuG7775Dw4YNAQBXr17F9u3bcfToUbi7uxdk6Xkmd5+Lql27duG3335jcKICwdBEZCA8PT2xdu1ajBkzBrVr19Z3OQUqOTkZ5ubmUCgU77We8+fPo2HDhujUqdM72x05cgTh4eFYtmwZ+vTpI01v06YNhgwZgoyMjPeqoyDJ3We50tPT8erVK5iZmelkffnlxYsXsLS01HcZ9IHh6TkiAzF27FjY2dnh+++/f2e7uLg4KBQKBAcHZ5n39umhwMBAKBQKnD17Fl999RWUSiVsbW0xatQovHr1CpcvX4anpyesra3h7OyMGTNmZLvNly9fYtSoUVCpVLCwsIC7uztOnz6dpd3JkyfRoUMH2NrawtzcHHXr1sVff/2l0SbzdOTevXvRt29flC5dGpaWlkhJSclxn2/evIkePXrA3t4eZmZmqFatGmbNmiWFm8zTiP/99x92794NhUIBhUKBuLi4bNf38OFDAMhxVKZYsf//n8b79+9j0KBBqF69OooXLw57e3s0b94cR48ezbHeNyUkJGDgwIEoV64cTE1N4eLigkmTJuHVq1ca7RYt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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sale_dynamics(products, campaigns_brut, type_of_activity)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}