# Journal de bord du Mooc / Mooc's logbook Test MODIF 26/08/24 FR Espace réservé au journal de bord du Mooc ## Module 1 : cahier de notes, cahier de laboratoire ### 1. MarkDown [Synthèse en fin de page](https://en.wikipedia.org/wiki/Markdown#Example) [LaTeX](https://ashki23.github.io/markdown-latex.html) - Fichier texte = fichier dont le contenu est fait de caractères UTF-8 - LibreOffice permet de comparer deux versions successives d’un même document. - Un moteur de Wiki ne permet de modifier qu'une seule page à la fois. - Les serveurs comme GitHub et GitLab permettent de travailler avec des fichiers binaires comme des images. - recherche proposée par un éditeur de texte ne fonctionne que sur un fichier à la fois ### 2. Git, gitlab, github - Anaconda prompt https://lms.fun-mooc.fr/courses/course-v1:inria+41016+self-paced/courseware/66bc811404b8481da5f794de54681c5e/d6b5dbe8add046e4bde324ed3fc936fa/ ``` (base) C:\Users\gwdumont>conda activate mooc-rr-rstudio (mooc-rr-rstudio) C:\Users\gwdumont>rstudio ``` - Git Bash : pour faire de la ligne de commande (mieux que cmd Win) https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-ressources/-/blob/master/module2/ressources/rstudio-git_fr.org ### 3. Les moteurs de recherche de bureau Les moteurs de recherche de bureau comme : - [DocFetcher (Linux, MacOS, Windows)](http://docfetcher.sourceforge.net/fr/index.html) : logiciel multi-plateformes ; - [Tracker (Linux)](https://wiki.gnome.org/Projects/Tracker) ; - [Recoll (Linux, MacOS, Windows)](https://www.lesbonscomptes.com/recoll/index.html.fr) ; - [Spotlight (MacOS)](https://fr.wikipedia.org/wiki/Spotlight_(moteur_de_recherche)) ; ## Module 2 : document computationnel ### 1. Exemples récents d’études assez discutées - Économie: Politiques d'austérité - [Reinhart et Rogoff](https://en.wikipedia.org/wiki/Growth_in_a_Time_of_Debt): Growth in a Time of Debt - Herndon, Ash et Pollin - Wray: combining data across centuries, exchange rate regimes, - Les IRM fonctionnelles - 2010: [Bennett et al.: le saumon mort](https://www.researchgate.net/publication/255651552_Neural_correlates_of_interspecies_perspective_taking_in_the_post-mortem_Atlantic_Salmon_an_argument_for_multiple_comparisons_correction) ☺ - 2016: [Eklund, Nichols, and Knutsson. Un bug dans les logiciels d'IRM pourrait invalider 15 années de recherche sur le cerveau](http://www.pnas.org/content/113/28/7900.abstract) (40 000 articles) - 2016: [C'est plus subtil que ça. D'après Nichols](https://www.cogneurosociety.org/debunking-the-myth-that-fmri-studies-are-invalid/), un des auteurs de l'article d'origine, c'est plutôt de l'ordre de 3 600 études qui seraient potentiellement impactées. - Les fausses structures de protéines - [A "buggy software"](https://people.ligo-wa.caltech.edu/~michael.landry/calibration/S5/getsignright.pdf). - Autres domaines - [Oncologie](http://www.nature.com/nrd/journal/v10/n9/full/nrd3439-c1.html?foxtrotcallback=true): "half of published studies, even in prestigious journals, can't be reproduced in industrial labs" - [Psychologie](http://theconversation.com/we-found-only-one-third-of-published-psychology-research-is-reliable-now-what-46596): "attempting to reproduce 100 previously published findings, only one-third of published psychology research was found to be reliable" **la remise en cause fait partie du processus scientifique** Cas de pb de reproductibilité : manque de rigueur et la transparence ### 2. Pourquoi est-ce difficile ? 1. Les erreurs classiques - le manque d'informations, pb d'accès aux données. - les erreurs de calcul induites par l'utilisation effrénée des ordinateurs et logiciels sans tout comprendre (cas d'interprétation dans tableur excel). - [En quoi les ordinateurs ont "cassé" la science](http://theconversation.com/how-computers-broke-science-and-what-we-can-do-to-fix-it-49938) - [Erreurs de programmation et de manipulation de données en génomique](https://qz.com/768334/years-of-genomics-research-is-riddled-with-errors-thanks-to-a-bunch-of-botched-excel-spreadsheets/) - le manque de rigueur scientifique et technique, et d'organisation. 2. Outils à éviter, alternatives - règle numéro 1 : utiliser autant que possible du format texte. Markdown, Org-mode (notes), csv (données). - règle numéro 2 : utiliser autant que possible les logiciels et les langages de programmation libres, comme R ou Python que nous utiliserons dans ce MOOC. - règle numéro 3 : éviter de stocker vos données chez un hébergeur dont vous pourriez être captif. Répliquez-les à plusieurs endroits. - Tout rendre publique ? - Quelqu'un pourrait [tirer parti de mon dur labeur](http://www.nature.com/news/the-top-100-papers-1.16224). Les papiers les plus cités sont des papiers qui décrivent une nouvelle technique ou un logiciel permettant à une communauté de recherche d'avancer. ### 3. Document computationnel : principe Objectifs méthodologiques Garder trace afin de : - Inspecter : justifier/comprendre - Refaire : vérifier/corriger/réutiliser Dans un document computationnel, on trouve 1. Des commentaires 2. Du code 3. Un aperçu des données 4. Les résultats de calculs 5. Des liens hypertextes 6. Des images Un document computationnel permet de 1. Inspecter les calculs 2. Réexécuter facilement les calculs si l'environnement d'origine est disponible 3. Documenter le code 4. Expliquer pourquoi tel ou tel calcul est effectué en fonction des données analysées 5. Utiliser plusieurs langages pour faire des calculs (même si cela peut demander un peu de travail) ### 4. Présentation de 3 outils pour écrire un document computationnel : 1. Jupyter, 2. RStudio + knit R (transforme .Rmd en fichier html, pdf (via LaTex) en fonction de ce qu'on a indiqué dans la partie métadonnées en header du fichier .Rmd) Production et partage du document final - Knit - pdf, LaTex - html - word/office - Possibilité de faire du LaTex (R Sweave : Rnw) ou du html (R html : Rhtml) directement pour avoir un contrôle parfait. - Partage à peu de frais via rpubs TinyTex Yihui Xie, auteur du remarquable package R "bookdown", a mis au point une version allégée de LaTeX, TinyTex ("[A lightweight, cross-platform, portable, and easy-to-maintain LaTeX distribution based on TeX Live](https://yihui.name/tinytex/)"). [Le langage R Markdown](https://lms.fun-mooc.fr/c4x/UPSUD/42001S02/asset/RMarkdown.pdf) [Documentation du langage R](https://cran.r-project.org/manuals.html) [Documentation de la bibliothèque parsedate](https://cran.r-project.org/web/packages/parsedate/parsedate.pdf) 3. Emacs/Org-mode ## Module 3 : étude de cas "incidence des syndromes grippaux" Le site Web du Réseau Sentinelles que nous utilisons dans ce module a subi des modifications importantes après le tournage des vidéos. L'accès aux données ne se passe plus comme montré. Il faut passer par les menus "Surveillance continue" - "Base de données" - "Accès aux données" et cliquer sur l'onglet "Télécharger", puis choisir les données au format CSV pour la France Métropolitaine. Le format des données téléchargées a aussi légèrement changé, il faut adapter le traitement des données manquantes. Le code que nous montrons dans les vidéos ne fonctionne plus avec les données d'aujourd'hui. Une version mise à jour est disponible ici. ### 1. Import des données Attention 1. aucune modification de données à la main (la suppression d'une ligne car aucune donnée pourrait passer pour une tentative de fraude) 2. lire les données à la source 3. faire attention aux données manquantes : R gère les données manquantes presque automatiquement, c’est seulement lors de la sommation sur une année que nous devons explicitement demander qu’elles soient ignorées. Le format ISO pour les dates : La norme ISO 8601 Le Réseau Sentinelles reprend cette définition du numéro de semaine, mais ne respecte pas la représentation précise prévue par la norme ISO 8601. Au lieu d'écrire la troisième semaine de 1995 comme 1995-W03, il écrit 199503. ### 2. Vérification et inspection des données - pré-traitement des données pour les adapter aux conventions des logiciels : R ne peut pas interpréter le format des données d’origine - inspection visuelle et du code spécifiquement écrit pour la vérification - l'intérêt de la vérifier que la distance entre deux semaines consécutives est de 7 jours est de : - de mettre en évidence des semaines complètement absentes du jeu de données - de pouvoir identifier une erreur dans la conversion des dates ### 3. Analyse Les étapes à respecter sont : - une analyse réplicable doit contenir toutes les étapes de traitement de données sous forme exécutable ; La distinction entre une analyse de données réplicable et une analyse traditionnelle : Le code de tous les calculs est fourni - il faut expliquer tous les choix qui peuvent influencer les résultats - il faut exposer des détails techniques ; l'accès aux erreurs est nécessaire pour vérification par d'autres lecteurs Les avantages d’une analyse réplicable sont qu'elle est plus facile à modifier et à vérifier. EN Reserved for the Mooc's logbook