Skip to content

Latest commit

 

History

History
213 lines (138 loc) · 11.1 KB

index.md

File metadata and controls

213 lines (138 loc) · 11.1 KB

Bienvenue au cours de Python du DU Bii. Vous trouverez sur ce dépôt toutes les informations et ressources nécessaires.


Intervenants

  1. Sandra Dérozier, INRAE, <sandra.derozier@inrae.fr>
    (co-responsable)
  2. Pierre Poulain, Université de Paris, <pierre.poulain@u-paris.fr>
    (co-responsable)
  3. Hubert Santuz, CNRS, <hubert.santuz@ibpc.fr>
  4. Magali Hennion, CNRS, <hennion@bio.ens.psl.eu>
  5. Benoist Laurent, IBPC, <benoist@ibpc.fr>
  6. Julie Lao, INRAE, <julie.lao@inrae.fr>

Activités préparatoires

Un certain nombre de prérequis sont à préparer avant le premier cours. Ils sont indiqués sur la page dédiée.

Synopsis

Dans ce cours, nous allons voir les bases du langage Python. Au-delà de l'apprentissage de la syntaxe du langage Python, nous aborderons quelques bases d'algorithmie, c'est-à-dire comment transformer un problème énoncé en français, en une suite d'instructions informatiques.

L'apprentissage de la programmation est un processus nécessitant un certain investissement. Ainsi, nous vous conseillons de faire un maximum d'exercices sur une base régulière afin d'acquérir certains automatismes.

À la fin du cours, vous devriez être capable d'écrire des scripts et des notebooks Jupyter pour :

  • Lire des fichiers contenant des données biologiques et rechercher des contenus spécifiques dans ces fichiers.
  • Changer le format des données d'un fichier en un autre.
  • Faire des calculs de base sur les données extraites de fichiers.
  • Réaliser une suite de tâches plus ou moins complexes.
  • Continuer à vous former par vous même après la fin du DU.

En outre, vous apprendrez également à utiliser des modules incontournables en analyse de données (pandas, numpy, matplotlib) en bioinformatique.

Organisation des cours

Les enseignements seront donnés sous forme de cours / TP, quelques minutes de théorie en live coding seront suivies d'une mise en pratique immédiate.

À titre indicatif, nous détaillons dans la suite le découpage des différentes séances. Ce découpage est succeptible de changer en fonction du degré d'avancement de l'ensemble des stagiaires. N'hésitez pas à revenir régulièrement sur cette page pendant la formation.

Ressources

  • Le cours en ligne.
  • Le serveur Jupyter Hub de l'IFB
  • Les corrections des exercices sur trouvent dans le répertoire /shared/projects/dubii2021/trainers/module2/corrections/ sur le serveur de l'IFB.

Séance 1 -- mardi 2 mars : 9h30 - 12h30

Instructeurs : Sandra Dérozier & Pierre Poulain
Helpers : Hubert Santuz, Magali Hennion, Benoist Laurent & Julie Lao

Programme : introduction et prise en main du Jupyter Lab, révisions des notions travaillées en autonomie. Variables, affichage, listes.

Séance 2 -- mercredi 3 mars : 14h30 - 17h30

Instructeurs : Sandra Dérozier & Pierre Poulain
Helpers : Hubert Santuz, Magali Hennion, Benoist Laurent & Julie Lao

Programme : boucles et comparaisons, tests, fichiers.

Travail pour la prochaine séance :

Séance 3 -- jeudi 11 mars : 13h30 - 16h30

Instructeurs : Sandra Dérozier & Pierre Poulain
Helpers : Hubert Santuz, Magali Hennion, Benoist Laurent & Julie Lao

Programme : notebook Jupyter (diapo + tutoriel), modules, matplotlib (cheat sheets et référence).

Séance 4 -- mardi 23 mars : 9h30 - 12h30

Instructeurs : Sandra Dérozier & Hubert Santuz
Helpers : Pierre Poulain, Magali Hennion, Benoist Laurent & Julie Lao

Programme : plus sur les chaînes de caractères, plus sur les listes, Numpy.

Séance 5 -- mardi 23 mars : 14h00 - 17h00

Instructeurs : Sandra Dérozier & Pierre Poulain
Helpers : Hubert Santuz, Magali Hennion & Julie Lao

Programme : dictionnaires, tuples et sets, Pandas.

Séance 6 -- jeudi 25 mars : 9h00 - 12h00

Instructeurs : Sandra Dérozier & Pierre Poulain
Helpers : Hubert Santuz, Magali Hennion, Benoist Laurent & Julie Lao

Programme : cas d’applications à l'analyse et la visualisation de données omiques.

Si le jupyter Hub de l'IFB est en carafe, ouvrez un terminal sur votre machine locale, puis exécutez les commandes suivantes :

$ mkdir -p $USER/dubii/module-2
$ cd $USER/dubii/module-2
$ git clone https://github.com/pierrepo/python-omics-use-cases
$ git clone https://github.com/sderozier/python-notebooks-use-cases
$ conda activate dubii2021-python
$ jupyter lab

Rappel : le caractère $ en début de ligne n'est pas à entrer. Il indique simplement le début d'une ligne de commande.

L'interface Jupyter Lab devrait se lancer dans votre navigateur web. Cela peut prendre du temps, soyez patient.

Depuis cette interface, vous pouvez naviguer dans :

  • le répertoire python-notebooks-use-cases/notebooks/ pour découvrir les notebooks :

    • formats.ipynb : manipulation de différents formats de fichiers (FASTA, FastQ, GenBank, GFF).
    • comptage_rnaseq.ipynb : exploration de données de comptage RNA-Seq
  • le répertoire python-omics-use-cases/notebooks pour découvrir les notebooks :

    • volcano_plot.ipynb : construction d'un volcano plot, représentation graphique couramment utilisée lors de l'analyse de données omiques, dans cet exemple avec des donnée de protéomique. Utilisation des bibliothèques graphiques Matplotlib et Bokeh.
    • fusion_donnees.ipynb : fusion de deux jeux de données avec pandas. Un premier jeu de données avec des résultats de protéomique et un second avec des descriptions de protéines provenant d'UniProt.
    • acp_recettes.ipynb : analyse en composantes principales avec la bibliothèque Scikit-learn. Et cette fois, sans donnée omique ;-)

Le notebook formats.ipynb sera expliqué en priorité car vous pourrez vous en servir pour votre projet.

Pour les autres notebooks, vous choisirez lesquels vous souhaitez une démo et des explications : ici

Évaluations

1. Notebook Jupyter "Analyse et une visualisation de données"

Instructions. À rendre pour le vendredi 19 mars 18h00.

2. QCM

Le QCM est accessible en ligne. À faire pour le vendredi 26 mars 18h00.

3. Mini-projet

Instructions. À rendre pour le vendredi 7 mai 18h00.

Sur place ou à emporter ?

Ce site que vous consultez actuellement et les notebooks use cases de démo sont hébergés dans des dépôts Github publics.

Voici les liens pour les explorer depuis votre navigateur ou les télécharger sur votre machine ou le serveur de l'IFB :

License

This content is released under the Creative Commons Attribution-ShareAlike 4.0 (CC BY-SA 4.0) license. See the bundled LICENSE file for details.

Ce contenu est mis à disposition selon les termes de la licence Creative Commons Attribution - Partage dans les Mêmes Conditions 4.0 International (CC BY-SA 4.0). Consultez le fichier LICENSE pour plus de détails.