Premiers pas avec Jupyter

Une analyse de donnée prend la forme d’un document narratif expliquant les objectifs, hypothèses et étapes de l’analyse: quelles sont les données, qu’est-ce que l’on souhaite calculer, pourquoi, comment, quels sont les résultats et quelles conclusions on en tire. Ce document est typiquement écrit en anglais pour qu’il puisse être partagé avec le plus grand nombre.

Depuis quelques années, les feuilles de travail (notebook) Jupyter sont un des moyens prisés pour rédiger de telles analyses de données et mener les calculs sous-jacents. Il s’agit en effet de documents permettant de mêler texte, formules, calculs interactifs et visualisations.

Le document que vous êtes en train de lire est une feuille Jupyter. On peut y mettre des calculs comme ci-dessous. Pour exécuter le calcul, cliquez dans la cellule ci-dessous et tapez Shift-Enter:

1 + 1

Utilisez maintenant la cellule ci-dessous pour calculer 1+2; puis réutilisez la même cellule pour calculer 3*4:

Vous rencontrerez aussi des cellules à compléter comme la suivante dans lesquelles vous remplacerez les deux lignes “Your code here” et “raise …” par le calcul à faire; calculez cinq fois sept:

### BEGIN SOLUTION
5 * 7
### END SOLUTION

Vous pouvez aussi éditer les cellules contenant du texte comme celle-ci. Allez-y: double-cliquez dans la cellule et mettez votre nom là:

BEGIN SOLUTION
XXXXXXX
END SOLUTION

Puis Shift-Enter.

Notez que certaines cellules de ce document sont en lecture-seule. Vous ne pouvez pas les modifier. En revanche, vous pouvez toujours insérer de nouvelles cellules libres (voir le menu Insérer).

On peut ausi mettre des formules mathématiques dans une cellule: $\(\frac 1 {1-\frac 1z} = \sum_{i=0}^\infty \frac 1 {z^i}\)$

Correction semi-automatique avec nbgrader

Certaines feuilles de travail seront notées. Les notes de certaines séances ultérieures contribueront à votre moyenne. Cette première séance est une séance d’entraînement; les notes seront indicative pour que vous preniez en main le mécanisme.

Une partie de la correction est manuelle: vos enseignants regarderont vos réponses et attribueront des points à chacune d’entre elles. Le gros de la correction sera automatique, s’appuyant sur des tests similaires à ceux du premier semestre.

Voici un exemple tout bête. Dans la cellule suivante, calculez la somme de 3 et de 4, et stockez le résultat dans la variable s:

### BEGIN SOLUTION
s = 3 + 4
### END SOLUTION

La commande suivante est un test qui vérifie votre réponse; vous reconnaîtrez le assert (cette fois en minuscule) que nous utilisions en C++ au premier semestre:

assert s == 7

Validez votre feuille en cliquant sur le bouton Validate; cela en exécute une copie dans l’ordre en vérifiant tous les tests automatiques.

Déposez votre travail sur GitLab (voir les instructions).

Lancez la correction automatique pour obtenir votre score (voir les instructions). Ouvrez avec votre navigateur le fichier scores.html du sous-répertoire feedback/ nouvellement créé.

  • Pour ce premier TP, les scores sont indicatifs. Il suffit que vous déposiez le TP en temps et en heure sur GitLab pour obtenir les points.

  • Les feuilles peuvent contenir des tests cachés qui influencent le score.

  • Les scores indiqués ne tiennent compte que de la correction automatique. Une autre partie du score sera attribuée par vos enseignants (en cours de mise en place; nous verrons si nous arrivons à le faire pour ce premier TP).

Au boulot!

Maintenant que vous avez appris les rudiments de Jupyter et de l’environnement de travail, il est temps de passer au TP lui-même!