diff --git a/submission.ipynb b/submission.ipynb deleted file mode 100644 index 6f48488..0000000 --- a/submission.ipynb +++ /dev/null @@ -1,104 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Présentation du cas:\n", - "### Contexte:\n", - "L'équipe Sales de Toucan Toucan vient de sabrer le champagne après avoir signé un contrat prometteur avec une grande entreprise du luxe, Luxury Company !\n", - "\n", - "Les équipes marketing de Luxury Company récoltent des données de panel sur sa marque et celles de ses concurrents (regardées sous plusieurs dimensions, notamment par région géographique, catégorie de produits - parfum, maquillage etc.). Leur job est entre autres de produire un certain nombre d'analyses sur la base de ces données, et de les restituer régulièrement au Comité de Direction. Et cela fait maintenant plusieurs mois que l'quipe marketing souhaite passer à un format de restitution plus adapté que le traditionnel PowerPoint, fastidieux à mettre à jour et qui nécessite une présentation de vive voix pour être efficace dans la communication. Ils étaient à là recherche d'un outil digital plus simple, plus intuitif et plus dynamique, qui puisse accompagner quotidiennement les utilisateurs visés et leur raconter l'histoire qui les intéresse.\n", - "\n", - "Bien inspirés et bien conseillés par d'autres grandes entreprises qui nous ont fait confiance, ils ont fait appel à Toucan Toco, et nous demandent de leur livrer un POC (Proof of Concept) de small-app Toucan Toco. Samya, une de nos talentueux(ses) Client Success Managers, a déjà réfléchi au design de 2 écrans, et tu as l'honneur de travailler en binôme avec elle sur ce projet ! Elle a également récupéré un jeu de données du client qui ne nous permet pas de traiter l'information telle quelle. Il va falloir manipuler un peu la donnée, ça tombe bien, tu adores ça ! ;)\n", - "\n", - "### Éléments à ta disposition:\n", - "* les données reçues du client (fichier \"database.xslx\" dans le dossier \"datasource\"). Le client nous a fourni un dictionnaire des données pour comprendre la signification de chaque colonne (cf. plus bas)\n", - "* le format de données attendu en output de tes traitements (\"expected_data_structure.csv\" dans le dossier \"output\")\n", - "* un screenshot des 2 écrans basés sur les données (dans le dossier \"dataviz\"):\n", - " * un line chart (\"linechart.png\") montrant l'évolution des ventes YTD (cf. glossaire plus bas) en % d'une marque vs. le marché. La donnée peut être filtrée par marque, par pays et par catégorie de produits\n", - " * un horizontal bar chart (\"horizontal-barchart.png\") montrant le top 10 des marques en part de marché. La donnée peut être filtrée par pays et par segment.\n", - "\n", - "#### Dictionnaires des données :\n", - "##### database.xlsx (ce que tu reçois en input):\n", - "* *brand*: la marque considérée\n", - "* *country*: le pays considéré\n", - "* *gender*: le genre considéré (\"Women\" vs. \"Men\")\n", - "* *product_line*: la catégorie de produit considérée\n", - "* *segment*: le segment considéré, qui correspond à une sous-catégorie de product_line\n", - "* *product*: le produit considéré, correspondant au détail d'un segment (ce niveau de détail ne nous intéresse pas et la donnée devra être agrégée au niveau du segment)\n", - "* *jan 2016 ... Sep 2017*: les colonnes de valeurs à la date spécifiée en header. Tous les chiffres dans ces colonnes sont en euros et concernent les ventes sur un mois donné et uniquement ce mois.\n", - "\n", - "##### expected_data_structure.csv (ce que tu dois sortir en output):\n", - "* *brand*: idem que l'input (avec de nouvelles lignes pour le marché (libellées \"MARKET\")\n", - "* *country*: idem que l'input\n", - "* *product_line*: la ligne de produit avec un label plus complet que dans la source (concaténation des champs \"product_category\" et \"gender\" - e.g. \"Women Perfumes\")\n", - "* *segment*: idem que l'input\n", - "* *date*: idem que l'input\n", - "* *month*: le mois en format court correspondant à la date (e.g. \"Jan\")\n", - "* *year*: l'année correspondant à la date (e.g. \"2016\")\n", - "* *month_no*: le numéro du mois (de 1 à 12) correspondant à la date\n", - "* *value*: le montant des ventes en millions d'euros sur le mois considéré (cf. glossaire plus bas)\n", - "* *ytd*: le montant des ventes en millions d'euros et en YTD (cf. glossaire plus bas)\n", - "* *var_ytd*: la variation en pourcentage des ventes YTD vs. N-1 (e.g. la variation en pourcentage des ventes 'ytd' entre Jan 2016 et Jan 2017 sur la ligne datée Jan 2017)\n", - "* *market_share_ytd*: la part de marché pour le pays, la catégorie de produits, le segment et la date considérés (i.e. la part des ventes de la marque dans le total des ventes de l'ensemble des marques dans la catégorie de produit et dans le pays consiédérés à une date donnée\n", - "\n", - "### Ta mission si tu l'acceptes:\n", - "Sur la base des éléments fournis, nous avons besoin que tu nous rendes un script en python 3 (tu feras certainement bon usage de la librairie pandas ! ;)) prenant les donnnées clients en entrée, et retournant le dataset complet dont la structure correspondra à celle du fichier \"expected_data_structure.csv\".\n", - "\n", - "De plus, comme l'une de nos valeurs le suggère (WTFMB i.e. Write The F\\*\\*\\*ing Manual B\\*\\*\\*ch), tu devras rédiger une documentation (qui pourra être sous forme de commentaires dans ton script ou, plus classe, dans des cellules en markdown dans le notebook Jupyter) qui permettra au reste de l'équipe de reprendre facilement ton travail.\n", - "\n", - "**Tu peux coder ton script directement dans ce notebook Jupyter.**\n", - "Le notebook doit pouvoir s'exécuter sans problème, de l'extraction de la source dans le dossier \"datasource\" jusqu'à l'écriture dans un fichier \"submission.csv\" dans le dossier \"output\" (à côté du fichier \"expected_data_structure.csv\" auquel il sera comparé), en passant par toutes les transformations nécessaires.\n", - "\n", - "N'hésite pas à nous contacter si tu as des questions.\n", - "\n", - "### Glossaire et liens utiles:\n", - "* *Github*: THE site web d'hébergement et de gestion de code basé sur le logiciel de gestion de versions Git.\n", - "* *Markdown*: https://fr.wikipedia.org/wiki/Markdown\n", - "* *Notebook Jupyter*: un format de fichier très pratique se lisant dans un navigateur internet et permettant d'écrire des scripts de façon interactive et d'alterenr les cellules de code et les cellules de markdown. Tu trouveras la documentation du notebook à l'adresse suivante: https://jupyter-notebook.readthedocs.io/en/stable/\n", - "* *Pandas*: LA librairie star pour la manipulation de données ! Tu trouveras de la documentation à l'adresse suivante: http://pandas.pydata.org/pandas-docs/stable/\n", - "* *YTD (\"Year-To-Date\")*: un chiffre regardé en YTD à une date donnée correspond à la somme cumulée des chiffres allant du 1er janvier de la même année jusqu'à la date considérée (e.g. les ventes YTD à Mars 2017 sont égales à la somme des ventes des mois de Janvier 2017, Février 2017 et Mars 2017)\n", - "\n", - "Sur ce, nous te souhaitons bon courage et comptons sur toi pour participer au succès de ce POC auprès de notre client !\n", - "\n", - "**Et surtout amuse-toi, be well and take care !!!**\n", - "\n", - "A partir d'ici, ton script commence ! \n", - "Tu peux démarrer à la suite de la cellule suivante, qui importe la librairie pandas que tu devras utiliser (à condition de l'exécuter...)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "import pandas as pd" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "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.6.3" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -}