# Exercice 01-1 ## Recherche Gitlab Les deux fichiers contenant la chaîne de caractères **"LE MOOC RECHERCHE REPRODUCTIBLE C'EST GENIAL"** sont: - module1/exo1/aebef6b0a5.txt - module1/exo1/f683bbad4b.txt ### Historique Gitlab Le commit responsable de l'ajout du titre **Helloworld Python**est: 1. Numéro du commit: 505c4e26afaeaae6f563fe8b593155ec9d6210ca 2. Nom du commit :Arnaud Legrand # Prise en main de de l'outil Jupyter ## Lancement - ouverture d'un document - description rapide - sauvegarde - aide ## Exécution des blocs - Exécution et recupération des résultats - Ajout d'un bloc - Attention à l'ordre 1. Notion de seesion 2. Incohérence possible 3. Tout exécuter depuis le début en cas d'incohérence (kernell) ## Raccourcis clavier auto-complétion et python magic **shift + entrer**: réexécuter une cellule. **ctrl + entrer** : insérer une nouvelle cellule # Comment importer les données dans un notebook Jupyter - La gestion des données se fait à partir d'une bibliothèque python appelée **pandas** - **matplotlib** est une bibliothèque permettant de tracer des courbes. - **isoweek** va permettre de numériser des semaines au format iso. - La commande **%matplotlib inline** permet d'avoir les plots directement dansle notebook plutôt qie séparé. 1. Pour importer les doc avec la bibliothèque **panda** , on utilise la commande **pd.read_csv("adresse url")** 2. pour télécharger les données: Tools,download,copy download link. ## supprimer les données manquantes la commande est: **raw_data.dropna().copy()** ### Points clés - Lecture des données directement dans la source. - Gestion des données manquantes. # Quiz 14 1. Quelle est l’interview du module 1 où des données de nature hétérogène sont discutées ? L’interview avec la neurophysiologiste Isabel Llano 2. Que désigne-t-on par métadonnées ? Des informations (données) sur les données 3. En français le nombre 21 se dit « vingt-et-un ». En allemand, on dit « einundzwanzig » (littéralement « un-et-vingt »). Quelle est la prononciation petit-boutiste et quelle est la prononciation gros-boutiste ? Le français est gros-boutiste et l’allemand est petit-boutiste 4. Le format FITS est un format destiné à stocker des résultats d’ajustement de modèle (fit en anglais) Non FITS signifie Flexible Image Transport System. C’est le format de fichiers le plus communément utilisé en astronomie. 5. Le format FITS permet : - De stocker données et métadonnées - De stocker des données de nature variée 6. Le format HDF5 est-il hiérarchique ? Oui HDF signifie Hierarchical Data Format 7. Les (grosses) données peuvent être archivées et distribuées sur : - Figshare - Zenodo # Quiz 15 1. Quels sont les limitations et les inconvénients d’un document computationnel (notebook) ? (4 réponses attendues) - Lorsque le code est long, il devient difficile d’avoir une vue d’ensemble - Les interactions entre différents langages peuvent être hasardeuses car elles sont peu explicites - Il n’est pas bien adapté à des calculs longs ou impliquant de gros volumes de données - La sauvegarde des résultats intermédiaires ou la poursuite d’un calcul après une interruption sont des processus généralement manuels, ce qui est source d’erreur 2. Quels sont les avantages d’un workflow (3 réponses attendues) ? - Il permet de mieux structurer son code et de proposer une représentation graphique de haut niveau - Il se passe d’effets de bord, ce qui diminue les risques d’erreur - Il permet d’exploiter plus facilement une machine parallèle 3. Que peut-il se passer en terme de reproductibilité lorsque vous ne préservez pas l’environnement logiciel d’un calcul ? - Vous pouvez ne pas arriver à réexécuter votre calcul - Vos collègues peuvent ne pas arriver à réexécuter votre calcul - Le résultat des calculs peut changer 4. Comment préserver l’environnement logiciel d’un calcul effectué à l’aide du langage Python ou R ? (2 réponses attendues) - En utilisant un outil qui capture automatiquement l’ensemble des fichiers et de bibliothèques accédées lors du calcul - En travaillant dans un conteneur docker du début à la fin 5. Mettre à disposition l’environnement logiciel (sous forme binaire avec une image docker par exemple) d’un calcul permet à une tierce personne de: Réexécuter ce calcul 6. Quelle plate-forme utiliser pour archiver et mettre à disposition un article de recherche ? HAL ou ArXiv g. HAL ou ArXiv - correct 7. Quelles plates-formes utiliser pour archiver et mettre à disposition des données ? - Figshare - Zenodo 8. Quelles plate-formes utiliser pour archiver et mettre à disposition du code ? - Github ou Gitlab - Software Heritage # Quiz 16 1. Quelles caractéristiques de l’arithmétique à virgule flottante rendent la reproductibilité difficile ? - Les compilateurs peuvent changer l’ordre des opérations - En calcul parallèle, l’ordre des opérations peut varier d’une exécution à l’autre **EXPLICATION :** La nature approximative des résultats ne met pas en cause leur reproductibilité. 2. Quelles précautions augmentent la reproductibilité des nombres pseudo-aléatoires ? - Définir la graine dans le code d’application - Noter le numéro de version du générateur **EXPLICATION :** Noter les premiers nombres de la suite est conseillé pour surveiller la reproductibilité, mais ne l’augmente pas. # Explications détaillés de mon travail: "travail pratique évalué par les pairs" le travail pratique portait sur Concentration de CO2 dans l'atmosphère depuis 1958. Pour commencer, nous avons créer un fichier Markdown. Ensuite nous avons rédiger et fait le calcul en plusieurs étapes. - importer les bibliothèques jupyter urile à notre travail - importer et lire le fichier de donnée avec la commande **pd_read** - tracer le graphe de ces données avec la commande **plot** pour bien voir les variations du phénomène, on zoom le graphe précédent avec la commande **nom du fichier de données [ - 200 : ] . plot ( figsize = ( 10 , 6 ) )** on a aussi tracé l'histogramme de nos données avec **nom du fichier des données . hist ( figsize = ( 10 , 6 ) )**