Commit 25cc96ea authored by Laurence Viry's avatar Laurence Viry
Browse files

modif notebooks/IntroR.ipynb

parent 9dec9191
......@@ -123,18 +123,24 @@
"#### Saving your analysis steps\n",
"#### Saving your graphs\n",
"### Travailler en mode commande\n",
"#### Lancer la console R\n",
"\n",
"#### Lancer la console R"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Utiliser RStudio\n",
"\n",
"RStudio est l'environnement de développement intégré multiplateforme\n",
"pour R le plus couramment utilisé. Une capture d'écran est représentée à la Figure 1. \n",
"pour R le plus couramment utilisé. Une capture d'écran est représentée dans la figure qui suit. \n",
"\n",
"![RStudio](../figures/Rstudio.jpg)\n",
"![RStudio](../figures/InterfaceRStudio.jpg)\n",
"\n",
"Cet environnement inclut dans une seule interface atttractive:\n",
"\n",
" - une console, \n",
" - un terminal,\n",
" - un éditeur de code, \n",
" - sorties graphiques, \n",
" - l'historique,\n",
......
%% Cell type:markdown id: tags:
# Introduction
## Qu'est ce que R?
R est un système d'analyse statistique et graphique créé par Ross Ihaka et Robert Gentleman.
R est à la fois un logiciel et un langage interprété dont la conception dérive du langage S développé au sein des laboratoires AT&T Bell dans les années 80 et disponible actuellement sous la forme du logiciel S-PLUS commercialisé par la compagnie Insightful. Il y a des différences dans la conception de R et celle de S, pour en savoir plus sur ce point, se reporter au [R-FAQ3](https://cran.r-project.org/doc/FAQ/R-FAQ.html).
Le langage R possède aujourd'hui une communauté mature d'utilisateurs et de développeurs qui ont créé et partagé des milliers de package via le _Comprehensive R Archive Network_ (CRAN, https://cran.r-project.org).
R comporte de nombreuses fonctions pour les analyses statistiques, les
graphiques, le traitement et le stockage des données. Les graphiques sont visualisés à l'écran ou sur papier et peuvent être exportés sous divers formats (jpg, png, bmp, ps, pdf, emf, pictex,
xfig); les formats disponibles peuvent dépendre du système d'exploitation.
Les résultats des analyses statistiques sont affichés à l'écran ou peuvent être sauvegardés ou exportés dans un fichier pour être utilisés dans des analyses ultérieures.
R est un langage de programmation simple et efficace qui permet à l'utilisateur d'écrire ses propres algorithmes en utilisant le traitement conditionnel, les boucles, la récursivité, les fonctions intrinsèques et utilisateurs et des fonctions d'entrée /sorties.
R comprend une suite d'opérateurs po
ur les calculs sur des tableaux, en particulier des matrices.
R offre les possibilités d'améliorer ses performances en convertisant le haut niveau d'interprétation du code R en un langage compilé écrit en C, C++ ou Fortran (**RCPP**,...)
R permet de s'adapter à l'architecture des processeurs multi-coeurs et aux clusters de plusieurs noeuds en fournissant des outils aux développeurs qui lui permet d'utiliser des techniques de programmation parallèle (**parallel**,**multicore**,**snow**,...)
Un dernier point important, les statisticiens ont implémentés dans R sous forme de packages directement intégrées dans R, des centaines de procédures adaptées à une grande variété d'applications.
%% Cell type:markdown id: tags:
## Pourquoi R?
### Avantages
R a des avantages majeurs
1. Il est gratuit et le restera puisqu'il est distribué librement sous les termes de la [GNU General Public Licence](http://www.gnu.org/)
2. Il est disponible sur Internet, via un grand réseau de serveurs.
3. Il fonctionne sur de nombreux systèmes d'exploitation Unix et dérivés incluant
Darwin, Mac OS X, Linux, FreeBSD et Solaris; sur
Microsoft Windows.
4. Il est le produit d'une collaboration internationale entre
statisticiens et informaticiens;
5. Il ne limite pas l'utilisateur à un ensemble de procédures ou d'options, à une méthode presse-bouton tout en utilisant les packages déjà intégrés dans R.
6. Il fournit des outils consistants (bibliothèques, language,...) qui permettent de travailler avec des objets complexes de grande taille.
7. Il existe une documentation technique complète à laquelle participent les utilisateurs, des tutoriaux adaptés à des usages différents et aussi plusieurs bons livres sur les méthodes statistiques qui utilisent R (ou S) pour l'illustration.
8. Il est entièrement programmable, les procédures répétitives peuvent facilement être automatisées par des scripts écrits par l'utilisateur. Il est facile d'écrire ses propres fonctions, et pas trop compliqué d'écrire des paquets entiers pour implémenter de nouveaux algorithmes.
9. Le code source est publié, ainsi vous avez accès aux algorithmes exacts avec une validation possible les statisticiens experts.
10. Il peut échanger des données en format MS-Excel, texte, format fixe et délimité(CSV,...), de sorte que les jeux de données existants sont facilement importés, et les résultats calculés en R facilement exportables.
11. La plupart des programmes écrits avec S-PLUS fonctionneront sans modification, ou avec des changements mineurs, dans R.
### Inconvénients
R présentent quelques inconvénients:
1. L'utilisateur doit définir lui-même la séquence des analyses et les exécuter pas à pas, cependant, il est facile de créer des scripts avec toutes les étapes dans les éditeurs des interfaces utilisateurs de R (dans ce cours RStudio).
2. L'utilisateur doit apprendre à penser autrement la gestion de ses données, de penser les objets R comme des classes ce qui lui permettra de bénéficier des avantages des langages objet. Les méthodes opérant sur un objet en fonction de sa classe.
3. L'utilisateur doit apprendre un langage, à la fois pour les commandes mais aussi pour la spécification des analyses statistiques.
### Alternatives
Il y a d'autres logiciels qui permettent de faire des calculs statistiques et du traitement de données, ils peuvent souvent interagir entre eux avec la possibilité de programmer ses propres algorithmes ou d'interagir avec R. Aucun d'entre eux n'est open-source, ce qui signifie que vous devez faire confiance à l'entreprise pour faire les calculs correctemen
- S-PLUS: : implémentation commerciale du langage S di usée par TIBCO.
- SAS: un concurrent de S-PLUS, très utilisée dans l'industrie, programmable.
- [Des programmes statistiques spécifques](http://www.stata.com/links/statistical-software-providers/).
- Tableurs: Microsoft Excel (Data Analysis. . . ),
%% Cell type:markdown id: tags:
## Installer R
R est distribué librement sous les termes de la [GNU General Public Licence](http://www.gnu.org/)
, son développement et sa distribution sont assurés par plusieurs statisticiens
rassemblés dans le [**R Development Core Team**](https://cran.r-project.org/mirrors.html).
Pour un meilleur suivi du cours, nous vous conseillons d'installer R (Version 3.4.x au moins) et RStudio sur votre ordinateur personnel. Il s’agit de deux logiciels libres, gratuits, téléchargeables en ligne et fonctionnant sous Windows, Mac-OS et Linux.
R est disponible sous plusieurs formes :
- des exécutables précompilés pour Windows, Linux et OSX (Macintosh).
- de sources(écrit principalement en C et certaines routines en Fortran) qu'il faudra compiler avant de les utiliser.
Pour installer R, il suffit de se rendre sur une des pages suivantes:
- [Installer R sous **Windows**](https://cloud.r-project.org/bin/windows/base/)
- [Installer R sous **Mac**](https://cloud.r-project.org/bin/macosx/)
- [Sous **Linux**](https://cran.r-project.org/mirrors.html), R n’est fourni que comme un outil en ligne de commande, utilisez votre gestionnaire de packages habituel (de préférence, choisir un miroir proche de chez vous).
Plusieurs packages sont fournis avec l'installation de base, de nouveaux packages peuvent être facilement ajoutés, l'installation peut se faire en local ou pour l'ensemble des utilisateurs. Nous verrons comment installer de nouveaux package dans la suite du cours.
[RStudio](https://www.rstudio.com/products/RStudio/) est un environnement de développement intégré, qui propose des outils et facilite l’écriture de scripts et l’usage de R au quotidien. C’est une interface bien supérieure à celles fournies par défaut lorsqu’on installe R sous Windows ou sous Mac-OS
[Installer RStudio](https://www.rstudio.com/products/rstudio/download/#download), téléchargez la version adaptée à votre système.
%% Cell type:markdown id: tags:
## Utiliser R (Rossiter-RIntro-ITC.pdf)
Il y a plusieurs méthodes pour travailler avec R
* En mode commande (CLI) avec un éditeur.
* À partir d'une interface de développement (IDE), dans ce cours nous utiliserons **RStudio**.
* En utilisant le module **ESS** (Emacs Speaks Statistics) de l'éditeur **emacs**.
Suivant les systèmes d'exploitation, il existe d'autres interfaces de développement, **RStudio** est l'IDE la plus couramment utilisée.
%% Cell type:markdown id: tags:
## Interface Utilisateur
### Mode Console
#### Running the R console GUI
#### Setting up a workspace in Windows
#### Saving your analysis steps
#### Saving your graphs
### Travailler en mode commande
#### Lancer la console R
%% Cell type:markdown id: tags:
### Utiliser RStudio
RStudio est l'environnement de développement intégré multiplateforme
pour R le plus couramment utilisé. Une capture d'écran est représentée à la Figure 1.
pour R le plus couramment utilisé. Une capture d'écran est représentée dans la figure qui suit.
![RStudio](../figures/Rstudio.jpg)
![RStudio](../figures/InterfaceRStudio.jpg)
Cet environnement inclut dans une seule interface atttractive:
- une console,
- un terminal,
- un éditeur de code,
- sorties graphiques,
- l'historique,
- une aide en ligne,
- le contenu de l'espace de travail
- un gestionnaire de fichier
- le gestionnaire de paquets
L'utilisation typique est:
1. ouvrir un script ou lancer un nouveau script,
2. changer le répertoire de travail à l'emplacement de ce script,
3. écrire le code R dans le script,
4. passer des lignes de code du script à l'interface de ligne de commande et
évaluer la sortie,
5. examiner tous les graphiques et enregistrer pour une utilisation ultérieure.
%% Cell type:code id: tags:
``` R
# R comme calculatrice
2+3
log(7)
runif(5)
ls()
# R comme langage interprete
a <- runif(5)
a
ls()
n <- 7
log(n)
ls()
rm(a)
ls()
```
%%%% Output: display_data
5
5
%%%% Output: display_data
1.94591014905531
1.94591014905531
%%%% Output: display_data
1. 0.594258218305185
2. 0.693383326986805
3. 0.893219093093649
4. 0.389077465748414
5. 0.79426811914891
\begin{enumerate*}
\item 0.594258218305185
\item 0.693383326986805
\item 0.893219093093649
\item 0.389077465748414
\item 0.79426811914891
\end{enumerate*}
%%%% Output: display_data
%%%% Output: display_data
1. 0.727575702825561
2. 0.637299843598157
3. 0.459470001980662
4. 0.822656938573346
5. 0.176055253017694
\begin{enumerate*}
\item 0.727575702825561
\item 0.637299843598157
\item 0.459470001980662
\item 0.822656938573346
\item 0.176055253017694
\end{enumerate*}
%%%% Output: display_data
'a'
'a'
%%%% Output: display_data
1.94591014905531
1.94591014905531
%%%% Output: display_data
1. 'a'
2. 'n'
\begin{enumerate*}
\item 'a'
\item 'n'
\end{enumerate*}
%%%% Output: display_data
'n'
'n'
%% Cell type:markdown id: tags:
### Documentation sous la console
help(round)
<img src="fenetreRStudio.jpg",width=60,height=60>
![truc](fenetreRStudio.jpg)
%% Cell type:markdown id: tags:
# Les objets R
## Qu'est-ce qu'un objet dans R?
## Les vecteurs
## Les matrices
## Les listes
## Les facteurs
## Les data-frame
%% Cell type:markdown id: tags:
# Manipuler des données dans R
- Importer des données
- Sauvegarder des données ou des résultats
- Générer des données
- Manipuler des objets
- Quelques traitements statistiques
%% Cell type:markdown id: tags:
# Programmer avec R
## Les expressions conditionnelles (if et else)
## Les boucles (for ou while)
## Les fonctions
## Les boucles implicites (apply,lapply,...)
%% Cell type:markdown id: tags:
# Représenter des données
## Les graphiques de base
## Ajout à un graphique
## Présentation d'une distribution
## Personalisation des graphisuqes
## Exportation de graphiques
## Graphiques à plusieurs dimensions
## Les fonction graphiques avec lattice
## Introduction au package ggplot2
%% Cell type:markdown id: tags:
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment