{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Mon journal de bord du mooc RR" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Première semaine" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lancement du mooc. Pas de remarque particulière. Introduction historique particulièrement interessante. Outil DocFetcher et Markdown prometteur. Exercice de prise en main de Markdown. Petites difficultés au départ mais réussite de la reproduction." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Seconde semaine" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Entrée dans le dûr avec la présentation d'outils puissants et pratiques. Choix de Jupiter, plus adapté à mon utilisation de Python et au temps de disponible pour la prise en main." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercice 1 : reproduction d'un document avec calcul (estimation de $\\pi$)\n", "Prise en main de Jupiter et réalisation de l'exercice. Quelques difficulté sur l'écritrure des titres mais rapidement complété. Par contre pas possible de réaliser une comparaison, le fichier initial semble par ailleurs vide sur gitlab (en anglais et en francais mais que pour Jupyter)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercice 2 : calcul de statistiques decsriptives de base d'une série de données\n", "Réalisation rapide de l'exercice." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercice 3 : affichage en courbe et en histogramme des données de la série précédente\n", "Réutilisation du script de l'exercice 2 et ajout des commande de matplotlib." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercie 4 : journal de bord et statistiques au choix\n", "En profite pour me familiariser avec les raccourcis clavier qui s'avèrent particulièrement pratiques ! Choix d'une organisation chronologique pas nécessairement optimale mais semblant adaptée à la situation. Récriture des informations essentielles. Le temps des vidéos (parcours Jupyter) est compilé dans un fichier [csv](https://app-learninglab.inria.fr/moocrr/gitlab/b2c48a7ab4afbff5f4d26650b09eb6b4/mooc-rr/blob/master/module2/exo4/temps_videos.csv) qui sera utilisé pour la réponse à cet exercice (par manque d'originalité probablement). " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Import des données" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "data_set = np.mat('[1 0 118 ; 1 1 469 ; 1 1 468 ; 1 1 554 ; 1 1 560 ; 1 1 394 ; 1 2 560 ; 1 2 253 ; 1 3 366 ; 1 4 512 ; 1 4 701 ; 1 4 700 ; 1 4 602 ; 1 5 485 ; 1 5 345 ; 1 5 316 ; 2 0 251 ; 2 1 408 ; 2 2 702 ; 2 3 494 ; 2 4 553 ; 2 5 447 ; 2 6 676 ; 2 7 505 ; 2 7 584 ; 2 7 209 ; 2 7 189]')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Sur la série totale (Jupyter)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Statistiques de base" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Temps_total = 12421 s\n", "Min = 118 s\n", "Max = 702 s\n", "Moy = 460.037037037037 s\n" ] } ], "source": [ "Temps_total = np.sum(data_set[:,2])\n", "print('Temps_total = {0} s'.format(Temps_total))\n", "Min = np.min(data_set[:,2])\n", "print('Min = {0} s'.format(Min))\n", "Max = np.max(data_set[:,2])\n", "print('Max = {0} s'.format(Max))\n", "Moy = np.mean(data_set[:,2])\n", "print('Moy = {0} s'.format(Moy))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Affichage d'un histogramme" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([1., 2., 2., 2., 3., 2., 5., 5., 1., 4.]),\n", " array([118. , 176.4, 234.8, 293.2, 351.6, 410. , 468.4, 526.8, 585.2,\n", " 643.6, 702. ]),\n", " )" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "\n", "plt.hist(data_set[:,2])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Sur les modules 1 et 2 séparemment" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [], "source": [ "Module_1 = np.mat('[1 0 118 ; 1 1 469 ; 1 1 468 ; 1 1 554 ; 1 1 560 ; 1 1 394 ; 1 2 560 ; 1 2 253 ; 1 3 366 ; 1 4 512 ; 1 4 701 ; 1 4 700 ; 1 4 602 ; 1 5 485 ; 1 5 345 ; 1 5 316]')\n", "Module_2 = np.mat('[2 0 251 ; 2 1 408 ; 2 2 702 ; 2 3 494 ; 2 4 553 ; 2 5 447 ; 2 6 676 ; 2 7 505 ; 2 7 584 ; 2 7 209 ; 2 7 189]')" ] }, { "cell_type": "markdown", "metadata": { "hideCode": true, "hideOutput": true }, "source": [ "Pour le module 1" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Temps_total_1 = 7403 s\n", "Min_1 = 118 s\n", "Max_1 = 701 s\n", "Moy_1 = 462.6875 s\n" ] } ], "source": [ "Temps_total_1 = np.sum(Module_1[:,2])\n", "print('Temps_total_1 = {0} s'.format(Temps_total_1))\n", "Min_1 = np.min(Module_1[:,2])\n", "print('Min_1 = {0} s'.format(Min_1))\n", "Max_1 = np.max(Module_1[:,2])\n", "print('Max_1 = {0} s'.format(Max_1))\n", "Moy_1 = np.mean(Module_1[:,2])\n", "print('Moy_1 = {0} s'.format(Moy_1))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Pour le module 2" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Temps_total_2 = 5018 s\n", "Min_2 = 189 s\n", "Max_2 = 702 s\n", "Moy_2 = 456.1818181818182 s\n" ] } ], "source": [ "Temps_total_2 = np.sum(Module_2[:,2])\n", "print('Temps_total_2 = {0} s'.format(Temps_total_2))\n", "Min_2 = np.min(Module_2[:,2])\n", "print('Min_2 = {0} s'.format(Min_2))\n", "Max_2 = np.max(Module_2[:,2])\n", "print('Max_2 = {0} s'.format(Max_2))\n", "Moy_2 = np.mean(Module_2[:,2])\n", "print('Moy_2 = {0} s'.format(Moy_2))" ] } ], "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.4" } }, "nbformat": 4, "nbformat_minor": 2 }