{{tag>Xenial Bionic éducation calcul_numérique}}
----
====== R, un projet de calcul statistique ======
//The R Project for Statistical Computing//
**R** est un logiciel libre permettant de faire des calculs statistiques (test de Student, Anova, ACP, Chi2, régressions, etc.) et de visualiser les résultats sous forme de graphiques, voire de rapports d'analyses complets. C'est aussi un langage de script, permettant d'écrire des programmes d'analyses statistiques complexes. C'est un logiciel en ligne de commande mais de nombreux projets d'applications graphiques dédiés sont développés autour de R.
===== Pré-requis =====
* Disposer des [[:sudo|droits d'administration]].
* Disposer d'une connexion à Internet configurée et activée.
===== Installation =====
==== Via les dépôts Ubuntu ====
L'installation de **R** est très simple : il suffit d'[[:gestionnaire_de_paquets|installer le paquet]] **[[apt>r-base]]**.
R dispose de nombreuses fonctions supplémentaires disponibles sous la forme de paquets téléchargeables (un peu comme ubuntu). Pour pouvoir installer certains de ces paquets, il vous faut de quoi les compiler. C'est pourquoi il est aussi conseillé d'[[:gestionnaire_de_paquets|installer le paquet]] **[[apt>r-base-dev|r-base-dev]]**.
==== Via un mirroir du CRAN (version plus récente) ====
Source : [[https://mirror.ibcp.fr/pub/CRAN/]]
# update indices
apt update -qq
# install two helper packages we need
apt install --no-install-recommends software-properties-common dirmngr
# add the signing key (by Michael Rutter) for these repos
# To verify key, run gpg --show-keys /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# Fingerprint: 298A3A825C0D65DFD57CBB651716619E084DAB9
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# add the R 4.0 repo from CRAN -- adjust 'focal' to 'groovy' or 'bionic' as needed
add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/"
==== Installer une interface graphique ====
[[https://www.activestate.com/komodo-ide/downloads/edit|Komodo Edit]] est un éditeur polyvalent et //open-source// qui peut être mis en interface avec R grâce au module complémentaire [[http://www.sciviews.org/SciViews-R/|SciViews-R]].
[[http://www.rstudio.org/|RStudio]] est un nouvel environnement de développement intégré. RStudio propose de nombreuses fonctionnalités intéressantes, telles la coloration syntaxique, la gestion des fichiers Sweave et LaTeX, un tableur, un gestionnaire de librairies, etc. Pour l'installer, il suffit de télécharger le fichier .deb sur le site de [[http://www.rstudio.org/download/desktop|RStudio]] et de l'ouvrir à l'aide de la logithèque Ubuntu (option par défaut).
[[http://rkward.sourceforge.net/|RKward]] est une interface graphique de R pour KDE. [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>rkward]]** pour en bénéficier.
[[http://socserv.mcmaster.ca/jfox/Misc/Rcmdr/|Rcmdr]] est une interface graphique indépendante du système d'exploitation. [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>r-cran-rcmdr]]** pour en bénéficier.
[[http://rgedit.sourceforge.net/|rgedit]] est un plugin pour utiliser R avec [[gedit]]. Pour l'installer, télécharger la dernière version sur le site, extraire les fichiers dans .gnome2/gedit/plugins puis activer le pluging dans gedit, Édition-> Préférences->Greffons
[[http://www.walware.de/goto/statet|StatET]] est un plugin pour utiliser R avec Eclipse. Il permet une reconnaissance syntaxique, offre un explorateur d'objet... Pour l'utiliser il faut installer le package rJava au préalable.
On peut aussi utiliser [[:emacs]] avec le mode ESS (emacs speaks statistics).
===== Configuration =====
Les commandes R que l'on souhaite voir exécutées au lancement sont à écrire dans un fichier ''~/.Rprofile''.
R_LIBS_USER="~/lib/R/library"
===== Utilisation =====
Comme première approche, on peut simplement regarder les démonstrations des fonctionnalités du logiciel:
R
R version 2.8.1 (2008-12-22)
[skip]
> demo() #montre toutes les démos disponibles
> demo(graphics) #lance une démo particulière
* En ligne de commande: R
* Avec l'interface KDE: Lancez RKward.
* Avec l'interface graphique R commander (Rcmdr): il faut ouvrir un terminal, lancer R puis charger Rcmdr :
R
> library(Rcmdr)
Si vous installez R avec les dépôts officiels Ubuntu //et// avec les dépots de CRAN (plus récents), vous aurez probablement deux versions de R, celle des dépots Ubuntu étant généralement lancée par:
/usr/local/bin/R
et celle de CRAN par:
/usr/lib/R/bin/R
La commande suivante vous permet de connaître le chemin de la version lancée par défaut:
which R
> /usr/local/bin/R
Puis lancer R en mode administrateur :
sudo R
library(Rcmdr)
Vous pourrez ensuite faire les mises à jours nécessaires des bibliothèques.
===== Premiers pas =====
D'une façon générale, un grand nombre de bibliothèques est disponible dans les dépôts. Pour les charger dans R, rien de plus simple. Par exemple, pour charger la librairie RQuantLib (après l'avoir installé via synaptic) :
> library(RQuantLib);
Enfin, pour exécuter un script R (appelons-le test.R),
> setwd("/le/chemin/de/mon/script");
> source("test.R");
Ou alors en dehors du programme R directement depuis la console:
~$ Rscript /chemin/test.R
Pour importer un fichier csv (numérique, avec éventuellement 1ère ligne et 1ère colonne pour les noms de colonnes et lignes) :
> read.csv("monfichier.csv", sep=",", dec=".", header=TRUE);
Enfin pour lister les objets R de l'espace de travail :
> ls();
===== Manuels =====
==== En français ====
* Un manuel assez complet est disponible [[http://cran.r-project.org/doc/contrib/Paradis-rdebuts_fr.pdf|ici]].
* Une introduction au système R est disponible [[http://cran.univ-lyon1.fr/doc/contrib/Brostaux-Introduction-au-R.tar.gz|ici]].
* Un manuel de programmation en R est disponible [[http://cran.univ-lyon1.fr/doc/contrib/Goulet_introduction_programmation_R.pdf|ici]].
* Un document complet d'introduction et de prise en main à destination des utilisateurs pas spécialement à l'aise en informatique est disponible [[http://alea.fr.eu.org/j/intro_R.html|ici]].
==== En anglais ou autre ====
* Vous trouverez la documentation officielle [[http://cran.univ-lyon1.fr/manuals.html|ici]].
* On peut aussi consulter le wikibook [[https://en.wikibooks.org/wiki/R_Programming|R programming]].
===== Aide et support =====
=== En français ===
* [[https://larmarange.github.io/analyse-R|analyse-R]] une série de tutoriels très complets et accessibles aux débutants sur l'analyse de données avec **R**
* [[http://abcdr.guyader.pro/|L'abcdR]] scripts et astuces **R**
* [[https://forums.cirad.fr/logiciel-R/index.php|Forum Web]] hébergé par le Cirad
* [[http://www.developpez.net/forums/f1179/autres-langages/autres-langages/r/|Forum Web]] du site developpez.net
* Canal IRC francophone sur R : #Rfr sur irc.freenode.net, ou via une [[http://java.freenode.net/index.php?channel=Rfr|interface Web]] (en Java)
* [[https://www.youtube.com/watch?v=sav3Mbe0_DM|Le Chat septique explique les bases de R et RStudio]]
===== Sources =====
* [[http://www.r-project.org/|Site Web]],
* [[http://cran.r-project.org/bin/linux/ubuntu/README|sur Cran]] le readme.
----
//Contributeurs : [[:utilisateurs:dkieffer]], [[:utilisateurs:utodeb]], eusèbe, [[:utilisateurs:hector]].//