Formation R avancée
Outils de développement et de performance
Robin Genuer et Boris Hejblum
2018-07-20
Présentation de la formation
Le but principal de cette formation est de vous donner des outils pour
faciliter le développement de code (performant) avec R
. L’aspect “performance”
arrivera dans un deuxième temps, et les premiers outils présentés sont
également très utiles dans des situations ne faisant pas intervenir de temps
de calculs importants.
Nous allons centrer la présentation de ces outils de développement autour
de la notion de package. Vous connaissez déjà cette notion, car vous avez
déjà installer des packages depuis le CRAN par exemple. Vous savez également
que c’est le moyen le plus standard dans R
pour mettre à disposition du code.
Nous allons vous montrer que le package est également un excellent outil pour
développer le code.
Nous allons adopter le plan suivant :
Construire un package
Tracer les changements, partager son code, développement collaboratif et automatiser les tests dans un package
Mesurer le temps de calcul
Profiler le code
Utiliser Rcpp pour optimiser ce qui doit l’être
Paralléliser facilement le code
Afin de suivre cette formation, il est nécessaire de disposer des logiciels suivants :
la dernière version de R (https://cloud.r-project.org/)
la dernière version de RStudio (https://www.rstudio.com/products/rstudio/download/#download)
un compilateur
C++
(tel quegcc
ouclang
- natif sous les système UNIX, pour les utilisateurs Windows nous recommandons l’installation de Rtools, pour les utilisateurs Mac il peut être nécessaire d’installer les outils de développement Apple comme suggéré ici)les packages
R
suivants : devtools, doParallel, itertools, microbenchmark, profvis, Rcpp, RcppArmadillo, roxygen2, testthat, mvtnormle client GitHub Desktop
le logiciel git