Topic outline

  • Section 1 : Introduction et configuration de l'environnement de travail


    Le cours de sciences de données a comme objectif de vous donner les outils nécessaires pour analyser un ensemble de données et proposer des hypothèses et modèles à partir de ces données.
    Nous allons utiliser des bibliothèques Python pour l’analyse, la visualisation et la modélisation des données

    Partie 1 : Introduction à Jupyter

    Nous allons démarrer par la configuration de notre environnement de programmation (fichier Installation Jupyter (pdf)) :

    Instructions
    • Suivez les instructions d'installation anaconda (python 3.7)
    • Demarrez une application et créez votre premier projet Hello World

    Pour valider la competence Installer et configurer votre environnement de travail vous devez charger votre notebook hello world sur campus skills.


    Partie 2 : Utilisation des modules externes

    Nous allons maintenant definir l'arborescence de nos fichiers de travail (fichier arborescence (pdf)):

    Instructions
    • Suivez les instructions dans le fichier pour créer votre arborescence des fichiers
    • Ouvrez le notebook notebook0_external_modules.ipynb et completez-le
    Pour valider la competence utiliser un module externe sur Jupyter vous devez charger le fichier external_modules.zip generé dans votre repertoire cours_data sur campus skills.
    Files: 3
  • Section 2 : Introduction à la bibliothèque Numpy

    La bibliothèque NumPy (http://www.numpy.org/) permet d’effectuer des calculs numériques avec Python. Elle permet de manipuler des tableaux et vecteurs. Dans cette section nous allons apprendre les fonctions de base de cette bibliothèque.

    Resources :

    Partie 1 : Introduction

    Nous allons apprendre comment créer des matrices et vecteurs

    Instructions :
    • Téléchargez le Notebook1 : Introduction to Numpy
    • Déplacez le notebook dans le repertoire cours data que nous avons créé dans la Section 1
    • Ouvrez le Notebook sur votre ordinateur en Jupyter
    • Complétez le Notebook en utilisant des fonctions Numpy
    Pour valider la competence créer et manipuler des vecteurs et matrices en utilisant les fonctions basiques de numpy téléversez sur campus skills le fichier numpy_basics.zip qui se trouve dans le repetoire cours_data


    Partie 2 : Algebra lineaire avec numpy

    Nous allons faire des operations sur des matrices grâce aux fonctions de Numpy
    Ressources :
    Un peu de lecture sur le calcul matriciel http://maths.cnam.fr/IMG/pdf/Alg.1_calcul_matriciel.pdf

    Instructions :
    • Révisez  quelques bases sur les matrices en répondant le Quiz : Les bases du calcul matriciel
    • Téléchargez le Notebook2 : Linear Algebra with Numpy
    • Déplacez le notebook dans le repertoire cours data que nous avons créé dans la Section 1
    • Ouvrez le Notebook sur votre ordinateur en Jupyter
    • Complétez le Notebook en utilisant des fonctions Numpy
    Pour valider la comptence faire des opérations avec des matrices en numpy completez le quiz (Les bases du calcul matriciel) et téléversez sur campus skills le fichier numpy_maths.zip qui se trouve dans le repertoire cours_data
    Files: 2Quiz: 1
  • Section 3 : Visualisation des données en Python

    Dans cette section nous allons utiliser la bibliothèque matplotlib pour dessiner des courbes et des figures.

    Ressources :



    Partie 1 : Introduction à Matplolib

    Nous allons faire des courbes basiques avec matplotlib

    Instructions
    • Téléchargez le Notebook3 : Matplotlib
    • Déplacez le notebook dans le repertoire cours data que nous avons créé dans la Section 1
    • Completez le notebook
    Pour valider la compétence : générer des courbes simples avec matplotlib, téléversez sur campus skills le fichier matplotlib.zip qui se trouve dans le repertoire cours_data


    Partie 2 : Matplotlib et Numpy

    Nous allons maintenant résoudre un problème de calcul numérique avec numpy. Nous allons visualiser le résultat avec matplolib.

    Instructions
    • Téléchargez le Notebook4 : Numpy and Matplotlib
    • Déplacez le notebook dans le repertoire cours data que nous avons créé dans la Section 1
    • Completez le notebook
    Pour valider la compétence : réaliser des calculs numériques en utilisant numpy, téléversez sur campus skills le fichiers numpy_matplot_exercise.zip dans le repertoire cours_data
    Files: 2
  • Section 4 : Manipulation des données avec Pandas

    La bibliothèque Pandas permet de manipuler des grandes volumes des données et les analyser.

    Ressources :


    Partie 1 : Structures des données en Pandas

    Nous allons étudier les structures des données principales en Pandas : Les Series et le DataFrame

    Instructions
    Pour valider la competence connaitre les structures des données utilisées en Pandas completez le test Les structures des données en Pandas et chargez sur campus skills le fichier pandas_introdution.zip qui se trouve dans le repertoire cours_data 


    Partie 2 : Lecture/Écriture des fichiers en Pandas

    Nous allons importer/exporter des fichiers des données avec Pandas. Et manipuler les données.

    Instructions
    • Téléchargez fichier data file (csv) et gardez-le sur le nom de data.csv dans le repertoire cours_data/input
    • Téléchargez le Notebook6 : I/O Files Pandas
    • Déplacez le notebook dans le repertoire cours data que nous avons créé dans la Section 1
    • Completez le notebook
    Pour valider les competences lire et écrire des fichiers en Pandas et savoir manipuler des Series et DataFrame en Pandas téléversez sur campues skills le fichier pandas_io_files.zip qui se trouve dans le repertoire cours_data
    Quiz: 1Files: 3
  • Section 5 : Visualisation Statistique avec Seaborn

    La bibliothèque Seaborn propose des fonctions plus avancées que Matplotlib pour afficher des données statistiques.
    Les statistiques descriptive permet de expliquer certains phénomènes à partir d'un grand volume des données. Nous allons nous servir des certains indicateurs statistiques pour analyser nos données.

    Ressources :
    Un peu de stats : cours sd (pdf)

    Partie 1 : Un peu de statistique

    Nous allons demarrer par revoir quelques concepts statistiques. Ces concepts vont nous permettre d'interpréter les résultats présentés par Seaborn.

    Instructions :
    Pour valider la competence connaitre les concepts élémentaires des statistiques, completez le test Concepts statistiques. Pour valiser la competence générer et interpréter des histogrammes, barplots et scatterplots en seaborn completez la partie 1 du Notebook7 : Seaborn and statistics et chargez sur campus skills le fichier seaborn_pandas.zip .


    Partie 2 : Correlation et relation entre plusieurs variables

     Nous allons explorer des fonctionnalités de Seaborn qui nous permettent de déterminer la relation entre les différentes variables.

    Instructions :
    Pour valider la competence visualizer des regressions lineaires et des correlations en seaborn completez le partie 2 du Notebook7 : Seaborn and statistics et et téléversez sur campus skills le fichier seaborn_pandas.zip .


    Quiz: 1Files: 2
  • Section 6 : Quel temps fait-il à Madrid? [1]

    Dans cette section nous allons analyser les données meteo de la ville de Madrid.

    Partie 0 : Avant de demarrer

    Quelques concepts pour demarrer :
    • Nettoyer les données : Un Data scientiste peut passer plus de la moitié de son temps a nettoyer ses données ; c'est une procédure indispensable car les résultats des analyses et modélisation dépendent de ces données. Nettoyer veut dire enlever les anomalies, remplir ou sortir les données manquantes, choisir l'information qui nous intéresse. Regardez cette video pour apprendre comment nettoyer des données en utilisant Pandas :
    • Et pourquoi pas un peu de lecture : https://www.dataoptimal.com/data-cleaning-with-python-2018/

    Partie 1 : Quelles données avons-nous?

    Dans cette partie nous allons recuperer notre jeux des données, analyser les variables que nous avons a notre disposition et choisir les variables qui nous interessent.

    Instructions :


    Partie 2 : Nettoyons nos données

    
    Nous allons nettoyer les données : nous allons éliminer les anomalies, nous allons completer les données manquantes et nous allons transformer les données.

    Instructions :
    Pour valider la competence Nettoyer un ensemble de données grâce à Numpy et Pandas téléversez sur campus skills le fichier data_processing.zip qui se trouve dans votre repertoire cours_data.

    Files: 2
  • Section 7 : Quel temps fait-il à Madrid? [2]

    Partie 0 : Avant de commencer

    Normaliser :  Une technique qui permet d'uniformiser les données. Nous pouvons donc traiter des données avec des valeurs différents de la même façon. Ça facilite aussi les calcules statistiques et la modélisation.

    Regardez cette video sur la normalisation : https://www.coursera.org/lecture/data-analysis-with-python/data-normalization-in-python-pqNBS

    Il y a plusieurs méthodes de normalisation. À difference de la video nous allons utiliser une bibliothèque python pour cette procedeure :  sklearn. Sklearn (ou SciKitLearn) met à notre disposition des fonctions pour normaliser nos données, pour créer des modèles statistiques et autres.

    Nous allons utiliser le module preprocessing de sklearn pour la normalisation et échelonnage. Regardez la documentation pour continuer : https://scikit-learn.org/stable/modules/preprocessing.html#preprocessing


    Partie 1 : Premiers pas en preprocessing et sklearn

    Nous allons nous familiariser avec preprocessing

    Instructions :
    • Téléchargez le Notebook9 : Normalisation
    • Placez-le dans le repertoire cours_data
    • Utilisez la documentation de preprocessing pour completer la Partie 0 du Notebook9 : Normalisation
    • Voulez-vous aller plus loin? Téléchargez le code dans ce lien, vous allez observer les effets des differents methodes dans les données
    

    Partie 2 : Traitons les données météo 

    Nous allons appliquer les méthodes de sklearn pour normaliser nos données.

    Instructions :
    Pour valider la competence normaliser un ensemble des données téléversez sur Campus Skills le Notebook9 : Normalisation.

    


    File: 1
  • Section 8 : Quel temps fait-il à Madrid? [3]

    Mon premier modèle 

    Nous allons créer nos premiers modèles en utilisant sklearn.

    Partie 1 : Estimation de la température moyenne à partir d'autres variables

    Nous allons utiliser le module linear model de sklearn pour estimer la valeur de temperature.

    Instructions :

    Partie 2 : Estimation de la température moyenne à partir des valuers passées

    Nous allons utiliser le module linear model de sklearn pour estimer la valeur de température.

    Instructions :

    Partie 3 : Prédiction d'un événement

    Nous allons utiliser le module sklearn neighbors pour classifier des événements.

      Ressources : Instructions :
    Files: 3
  • Mini-Projet (optionnel)

    Nous allons analyser un problème de reservation de salles de reunion en utilisant des données réels. Vous pouvez travailler en équipe.


    File: 1
  • Section 10 : Notre travail des derniers mois (Projet Presentiel)

    Dans ce projet nous allons analyser notre activité pendant la formation Data Asperger. Nous avons récupéré des données des nos plateformes en ligne : Caseine et Campus Skills.  Pour Caseine nous nous sommes intéressés au données générées par le cours Python DA.

    Nous pouvons nous passer des questions sur la difficulté des exercices, l'effort requis pour les résoudre, le temps total nécessaire pour finir le cour, le heures auxquelles les élèves valident leur competences, le niveau de satisfaction des élèves, etc.  C'est à vous de vos poser les bonnes questions et de trouver les réponses en analysant les données.

    Instructions :

    À vous de jouer, c'est un exercice ouvert, vous devez formuler vos hypothèses.
    Files: 5