Ressources pour la création d’un package R
Liens utiles
http://r-pkgs.had.co.nz/ (R packages by Hadley Wickham - lien RStudio)
http://r-pkgs.had.co.nz/style.html (Style guide : bonnes pratiques pour coder en R)
https://thinkr.fr/creer-package-r-quelques-minutes/ (THINKR - 5 étapes pour un package)
https://youtu.be/4QHKUpKC0Y8 (lien vidéo THINKR)
Packages utiles dans la création des packages (pas les dépendances)
https://www.r-project.org/nosvn/pandoc/devtools.html (devtools)
https://usethis.r-lib.org/ (usethis)
https://www.rdocumentation.org/packages/usethis/versions/1.5.0/topics/use_vignette (usethis::use_vignette)
https://cran.r-project.org/web/packages/roxygen2/vignettes/roxygen2.html (roxygen2 : documenter le package)
https://www.rdocumentation.org/packages/available/versions/1.0.2 (available)
https://cran.r-project.org/web/packages/lazyData/lazyData.pdf (lazyData)
https://www.r-project.org/nosvn/pandoc/lintr.html (lintr: écrire de manière standardisée )
https://journal.r-project.org/archive/2011/RJ-2011-002/RJ-2011-002.pdf (testthat : tester un package sous R)
Qu’est-ce qu’un package sous R ?
Un package (paquetage en français) regroupe du code, des données, de la documentation et des tests, et est facile à partager avec d’autres. Il est l’unité fondamentale sour R pour partager du code).
https://blog.revolutionanalytics.com/2017/01/cran-10000.html (Evolution du nombre de package sur le CRAN)
Avant de se lancer dans la création d’un nouveau package ou même d’une nouvelle fonction, il peut être interessant de s’assurer qu’elle n’est pas déja écrite et disponible.
S’il n’existe pas, vous pouvez aussi faire un package à des fins personnels sans le publier, ou un package pour votre organisation (des solutions ou des modèles utilisés en cercle restreint).
Création d’un package avec RStudio (les étapes)
https://thinkr.fr/creer-package-r-quelques-minutes/
https://www.rstudio.com/wp-content/uploads/2015/03/devtools-cheatsheet.pdf (devtools cheat sheet)
https://cran.r-project.org/manuals.html#R-exts (Ressources officielles du CRAN)
Création d’un package sous R (Old school) : à oublier ?
https://cran.r-project.org/doc/contrib/Genolini-ConstruireUnPackage.pdf
Packages S4 (Programmation Orienté Objet) sous R
S4 est la quatrième version de S. S est un langage qui a deux implémentations : S-plus est commerciale, R est gratuite. La particularité de S4 par rapport au S3 est l’apparition de fonctions qui permettent de considérer S-plus comme un langage objet. Par extension, S4 désigne la programmation orientée objet sous S. Et donc sous R et sous S-plus. Ces fonctions permettent de considérer et non pas «transforment en». En tout état de cause, R N’est PAS un langage objet, il reste un langage interprèté classique avec une surcouche possible. (Tiré du manuel)
https://cran.r-project.org/doc/contrib/Genolini-PetitManuelDeS4.pdf