R (langage)

Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis GNU R)
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir R.
R
Logo.

Date de première version Voir et modifier les données sur Wikidata
Paradigmes Programmation multi-paradigmes : orientée objet, impérative, fonctionnelle, procédurale, réflexive
Auteur Ross Ihaka et Robert Gentleman
Développeurs Projet GNU
Dernière version 3.3.2 ()
Influencé par S, Scheme
Écrit en C, Fortran et RVoir et modifier les données sur Wikidata
Système d'exploitation Multiplate-forme
Licences GNU GPL
Site web www.r-project.orgVoir et modifier les données sur Wikidata

R est un langage informatique dédié aux statistiques et à la science des données. L'implémentation la plus connue du langage R est le logiciel GNU R. GNU R est un projet GNU fondé sur l'environnement développé dans les laboratoires Bell par John Chambers et ses collègues.

Le logiciel R est considéré par ses créateurs comme étant une exécution de S, avec la sémantique dérivée du langage Scheme. C'est un logiciel libre distribué selon les termes de la licence GNU GPL et disponible sous GNU/Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X et Windows.

Histoire[modifier | modifier le code]

R dans un Terminal sous Linux.

Le projet R naît en 1993 comme un projet de recherche à l'université d'Auckland (Nouvelle-Zélande)[1].

Depuis 1997, une vingtaine de développeurs forment le R Development Core team (équipe coeur de développement). Les membres de cette équipe ont les droits d'écriture direct sur le code source[2].

La version R 1.0.0, première version officielle du langage R, est publiée le 29 février 2000[1].

En 2003, l'équipe de développement crée la R Foundation for Statistical Computing pour soutenir le projet R et devenir un point de contact de référence pour ceux qui veulent prendre contact avec la communauté R[1],[3].

En 2015, la création du R Consortium rassemblant des entreprises importantes comme IBM, Microsoft et des entreprises spécialisées comme RStudio vise à soutenir la communauté autour du langage R[4].

Implémentations[modifier | modifier le code]

L'implémentation la plus connue du langage R est le logiciel GNU R fournie par le R Project[5].

Il existe d'autres implémentations du langage comme Revolution Analytics, une implémentation développée par l'entreprise Revolution Analytics rachetée par Microsoft[6] ou encore Oracle R Distribution[7],[8].

Il existe aussi des projets expérimentaux comme le projet Rho visant à développer des versions plus rapides du langage R[9].

Interfaces[modifier | modifier le code]

R avec l'environnement de développement intégré RStudio.

RStudio est un environnement de développement intégré qui permet de travailler en R, développer de nouvelles librairies et travailler avec des notebooks.

Jupyter est une application web permettant de développer des notebooks en Python, Julia ou en R.

Communauté[modifier | modifier le code]

Communauté des contributeurs[modifier | modifier le code]

R dispose d'un très grand nombre de librairies développées par une communauté de contributeurs. À titre d'exemple, le site RDocumentation.org recense plus de 12 000 librairies sur le Comprehensive R Archive Network (CRAN), GitHub et Bioconductor (en) en février 2017[10].

Communauté des utilisateurs[modifier | modifier le code]

Une enquête menée par Rexer Analytics auprès de 1 300 analystes retrouve que R est le logiciel le plus souvent utilisé lorsqu'il s'agit d'un travail en entreprise, dans le monde académique, au sein d'organismes publics ou d'ONG et chez les analystes travaillant comme consultants[11].

Sur Twitter, la communauté se rassemble autour du hashtag rstats[12].

Sur Stack Overflow, il existe une important communauté autour du tag R[13].

Fonctionnalités[modifier | modifier le code]

La page R Task Views du Comprehensive R Archive Network donne une idée de l'étendue des fonctionnalités et des usages du langage R[14].

Manipulation de données[modifier | modifier le code]

R contient de nombreuses libraires de manipulation de données. Le développeur Hadley Wickham a notamment développé les librairies Dplyr et Tidyr qui définissent une grammaire de la manipulation de données.

Visualisation de données[modifier | modifier le code]

R contient de nombreuses librairies de visualisation de données.

La librairie Ggplot2 développée par Hadley Wickham définit une grammaire des graphiques et permet de combiner différentes couches graphiques.

La librairie Leaflet développée par la société RStudio permet de représenter des données géographiques sur des cartes interactives à l'aide de la librairie Javascript Leaflet.

Commmunication[modifier | modifier le code]

Le langage Sweave permet de combiner des sections de code en LaTeX et des sections de code en langage R pour produire des publications scientifiques directement depuis R.

Le langage Rmarkdown permet de combiner des sections de texte mises en forme en markdown et des sections de code en R pour réaliser des rapports au format Microsoft Word ou PDF, des présentations au format Beamer ou HTML5 (slidy.js ou reveal.js), des pages web, des sites web complets ou même des ouvrages entiers.

Applications web[modifier | modifier le code]

Le framework Shiny développé par la société RStudio permet de réaliser des applications interactives en langage R.

Notes et références[modifier | modifier le code]

  1. a, b et c « Over 16 years of R Project history », sur Revolution Analytics Blog (consulté le 18 février 2017)
  2. « Contributors », sur R-project.org (consulté le 18 février 2017)
  3. « The R Foundation », sur R-project.org (consulté le 18 février 2017)
  4. https://www.r-consortium.org/about
  5. (en) Hadley Wickham, « Performance », dans Advanced R (lire en ligne)
  6. Microsoft R Open
  7. Oracle R Distribution
  8. Oracle R Technologies
  9. https://github.com/rho-devel/rho
  10. « RDocumentation », sur RDocumentation.org (consulté le 17 février 2017)
  11. (en) David Smith, « R users: Be counted in Rexer's 2013 Data Miner Survey », Revolution Analytics Blog,‎ (lire en ligne).
  12. https://twitter.com/hashtag/rstats?lang=fr
  13. https://stackoverflow.com/questions/tagged/r
  14. https://cran.r-project.org/web/views/

Bibliographie[modifier | modifier le code]

  • (en) Ross Ihaka et Robert Gentleman, « R: A language for data analysis and graphics », Journal of Computational and Graphical Statistics, vol. 5,‎ , p. 299-314
  • (en) Hadley Wickham, ggplot2 : Elegant Graphics for Data Analysis, Springer, coll. « Use R »,
  • (en) Hadley Wickham, Advanced R, Chapman & Hall/CRC, coll. « The R Series », 1e éd. (lire en ligne)
  • (en) Hadley Wickham, R Packages : Organize, Test, Document, and Share Your Code, O'Reilly Media, (lire en ligne)
  • (en) Garrett Grolemund et Hadley Wickham, R for Data Science, O'Reilly, (lire en ligne)
  • Millot Gaël, Comprendre et réaliser les tests statistiques à l'aide de R, Éditions De Boeck, , 806 p. (présentation en ligne)
  • Husson F, Pagès J et Lê S, Analyse de données avec R, Presses Universitaires de Rennes
  • (en) Julia Silge et David Robinson, Text Mining with R : A Tidy Approach, O'Reilly, (lire en ligne)

Périodiques[modifier | modifier le code]

Voir aussi[modifier | modifier le code]

Sur les autres projets Wikimedia :

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]