Bonnes pratiques de développement avec R
ANF CNRS, Lille, 2024
1 Objectifs
Dans cette action nationale de formation, les participants pourront découvrir de bonnes pratiques en développement logiciel afin d’assurer la qualité de leur code, apprendre à maîtriser des outils pour mettre en application ces bonnes pratiques, et concevoir un package R.
À l’issue de la formation, les participants auront pu :
- appliquer concrètement les bonnes pratiques de développement en langage R ;
- mettre en œuvre le processus de développement d’un package ;
- mettre en place un versionnement avancé du travail avec Git ;
- tester automatiquement leur code et configurer un environnement d’intégration continue ;
- publier un package R sur une forge basée sur Git, et découvrir le processus de soumission d’un package sur le CRAN.
2 Organisation de la formation
Cette formation se déorulera du 18 avril au 20 avril 2024, et suivra la trame suivante :
- 18/04 matin : accueil, présentation générale du processus de développement d’un package R ;
- 18/04 après-midi et 19/04 matin : conception pratique d’un package R, en versionnant le code et en mettant en place un test automatisé des fonctions ;
- 19/04 après-midi : documenter, publier et promouvoir un package R ;
- 20/04 matin : session pratique récapitulative.
3 Fil rouge
Durant cette formation, les participants devront concevoir un package R (de petite taille) destiné à l’évalutation et la quantification des erreurs de mesure.
3.1 Pourquoi ce thème ?
La question des erreurs de mesure est fondamentale dans toutes les sciences expérimentales : leur quantification et leur contrôle sont des éléments fondamentaux afin d’assurer la fiabilité des résultats obtenus. Afin de prendre un cas d’application très simple, nous nous intéresserons au cas des erreurs de mesure en anthropométrie ou en ostéologie, et plus précisément au fait d’évaluer la concordance entre des mesures ou des observations effectuées sur du matériel osseux par différents chercheurs. Nous tenterons donc de concevoir quelques fonctions R très simples permettant de répondre à cette question : les mesures prises par un chercheur A sont-elles suffisamment cohérentes avec celles prises par un chercheur B sur les mêmes individus ?
De très nombreux indicateurs statistiques existent pour répondre à cette question (Barnhart et al., 2007; Lin et al., 2002; Ranganathan et al., 2017). Nous aborderons plus précisément les cas suivants :
- évaluer l’accord inter-juges sur des variables continues (par exemple une mesure osseuse prise au pied à coulisse) en utilisant le coefficient de concordance (Lin, 1989), ainsi que l’erreur technique de mesure (Perini & de Oliveira, 2005) ;
- évaluer l’accord inter-juges sur des critères qualitatifs de type présence-absence grâce au Kappa de Cohen (Cohen, 1960).
Le choix de ce thème est guidé par la simplicité conceptuelle de la problématique, la simplicité statistique et mathématique des fonctions R à coder, et par la facilité à tester automatiquement les résultats obtenus.
3.2 Contenu du package à concevoir
Le package contiendra donc notamment :
- une fonction
ccc()
implémentant le coefficient de concordance de Lin ; - une fonction
tem()
implémentant l’erreur techinique de mesure ; - une fonction
kappa_cohen()
implémentant le Kappa de Cohen ; - et bien sûr, une documentation exhaustive pour toutes ces fonctions !