Commit 24f8d755 authored by Laurence Viry's avatar Laurence Viry
Browse files

ajout .gitlab-ci.yml mkdocs.yml

parent 7b8c10f6
Pipeline #9152 failed with stages
in 1 minute and 31 seconds
make_pdf:
stage: build
image: tianon/latex
before_script:
- apt-get update -qq && apt-get install -y -qq python-pygments
script:
- "sh ci/make_latex.sh"
artifacts:
paths:
- docs/pdf
pages:
image: python:alpine
before_script:
- pip install mkdocs
- pip install https://github.com/mkdocs/mkdocs-bootswatch/archive/master.zip
script:
- mkdocs build
- mv site public
artifacts:
paths:
- public
dependencies:
- make_pdf
only:
- master
site_name: Formations calcul CED
site_url: "https:/formations-statistiques-R.gricad-pages.univ-grenoble-alpes.fr/CED-IntroR"
pages:
- Accueil: index.md
- Modules du cours:
- Introduction : IntroR.md
- Objets: Objets.md
- Manipuler des données : manipDon.md
- Informations pratiques : infos_pratiques.md
theme : material
......@@ -20,16 +20,65 @@
"\n",
"Enfin dans la cinquième partie, nous présentons quelques éléments de programmation, comment construire un script R implémentant un algorithme statistique ou une chaine de traitements sur des données. On aborde dans cette partie les capacités de déboguage et de profiling de R et rapidement comment utiliser les ressources multi-coeur actuellement disponibles sur les portables ou serveurs à notre disposition (ProgrammerR.ipynb, ProgrammerR.Rnw).\n",
"\n",
"Pour chacune de ces parties, vous aurez un fichier notebook que vous pourrez utiliser sur le serveur de notebook de GRICAD et un fichier R Markdown notebook que vous pourrez utiliser sur votre portable sous RStudio. Pour en savoir plus sur les notebook\n",
"(jupyter, Rmarkdown, https://www.datacamp.com/community/blog/jupyter-notebook-r#gs.6iMBYHw)\n",
"Pour chacune de ces parties, vous aurezdes fichiers notebook que vous pourrez utiliser sur [le serveur de notebook de GRICAD](https://jupyterhub.u-ga.fr/hub/login?next=%2Fhub%2Fuser%2Fviryl%2Ftree%3F), une version statique du cours et un fichier [R notebook Markdown](http://rmarkdown.rstudio.com/r_notebooks.html) que vous pourrez utiliser sur votre portable sous RStudio. [Pour en savoir plus sur les notebooks\n",
" (jupyter, Rmarkdown)](https://www.datacamp.com/community/blog/jupyter-notebook-r#gs.6iMBYHw)\n",
"\n",
"L'nsemble des consignes et des fichiers utiles à ce cours est stocké dans un projet gitlab de GRICAD, vous avez accès à ce serveur avec votre <identifiant,mot de passe> AGALAN.\n",
"L'ensemble des consignes et des fichiers utiles à ce cours est stocké dans le projet \"CED-IntroR\" du serveur gitlab de GRICAD, vous avez accès à ce serveur avec votre <identifiant,mot de passe> AGALAN.\n",
"\n",
"## Accès et utilisation du gitlab de GRICAD\n",
"## La plate-forme gitlab de l'UMS GRICAD\n",
"[gricad-gitlab](https://gricad-gitlab.univ-grenoble-alpes.fr/) est une plate-forme de travail collaboratif destinée à l'ensemble de la communauté enseignement-recherche grenobloise. Elle est hébergée et administrée par l'UMS GRICAD .\n",
"\n",
"https://gricad-gitlab.univ-grenoble-alpes.fr/users/sign_in\n",
"Il s'agit d'une implémentation du logiciel gitlab community edition, installée sur les serveurs de l'université.\n",
"\n",
"https://docs.gricad-pages.univ-grenoble-alpes.fr/help/"
"Cette plate-forme permet de créer et de partager des projets, tout en bénéficiant d'un certain nombre de fonctionnalités telles que:\n",
"\n",
" - gestion de version et de dépots (git)\n",
" - intégration continue\n",
" - ...\n",
"\n",
"Ce cours est associé au projet [CED-IntroR](https://gricad-gitlab.univ-grenoble-alpes.fr/formations-statistiques-R/CED-IntroR). Pour récupérer l'ensemble des fichiers du cours, exécuter dans un terminal, dans un répertoire de travail à votre convenance, la commande:\n",
"\n",
" git clone https://gricad-gitlab.univ-grenoble-alpes.fr/formations-statistiques-R/CED-IntroR.git\n",
"\n",
"Vous récupérez un répertoire CED-IntroR dans lequel figurent, tous les fichiers qui seront utilisés (notebooks, données, scripts R,...).\n",
"\n",
"## Le serveur de notebooks de l'UMS GRICAD\n",
"\n",
" * Connectez vous sur [le serveur de notebook de GRICAD](https://jupyterhub.u-ga.fr/) avec votre compte Agalan.\n",
" * Exemple d'utilisation, suivre le cours \"Introduction\", première partie de ce cours.\n",
" - Télécharger le fichier \"IntroR.ipynb\" figurant dans le répertoire CED-IntroR/notebooks que vous avez récupé sur le gitlab de GRICAD (bouton Upload en haut à droite de l'écran)\n",
" - Vous avez dans ce documents deux types de cellules, des cellules de type \" Markdown\" et des cellules de code R, pour interpréter ces cellules faire shift-return simultanément.\n",
" - pour conaitre les quelques commandes d'utilisation d'un notebook, voir le tutorial \"Getting started\" figurant dans le projet gitlab.\n",
" \n",
"## Installation de R sur votre portable\n",
"\n",
"Pour un meilleur suivi du cours, nous vous conseillons d'installer R (Version 3.4.x au moins) et [RStudio](https://www.rstudio.com/products/RStudio/) sur votre ordinateur personnel , de préférence avant la première séance. \n",
"Il s’agit de deux logiciels libres, gratuits, téléchargeables en ligne et fonctionnant sous Windows, Mac-OS et Linux.\n",
"\n",
"Pour installer R, il suffit de se rendre sur une des pages suivantes 2 :\n",
"\n",
" * [Installer R sous Windows](https://cloud.r-project.org/bin/windows/base)\n",
" \n",
" * [Installer R sous Mac](https://cloud.r-project.org/bin/macosx)\n",
"\n",
"[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\n",
"\n",
" [Installer RStudio](https://www.rstudio.com/products/rstudio/download/#download), téléchargez la version adaptée à votre système :\n",
" \n",
"Nous verrons comment installer de nouveaux package.\n",
" \n",
"## Travailler sur des données personnelles...de préférence\n",
"\n",
"Même si des exemples simples vous seront fournis pour faire quelques exercices, il est toujours plus efficace de s'éxercer sur des données personnelles. Ces données auront déjà été nettoyées en partie pour éviter de perdre du temps sur de la validation de saisie.\n",
"\n",
"## Quelques tutoriaux ou MOOCS en compléùent\n",
"\n",
"\n",
"\n",
"\n",
"\n",
"Si vous avez des questions, n'hésitez pas à m'envoyer un mail laurence.viry@univ-grenoble-alpes.fr\n",
"\n"
]
},
{
......
%% Cell type:markdown id: tags:
# Avant-propos
Ce cours s'adresse aux praticiens de la statistique, plus généralement aux personnes ayant à traiter des jeux de données dans des domaines variés (biologie, physique, sciences humaines,...) et ayant choisit R comme outil de traitement et d'analyse. Il a également pour objectif d'être un pré-requis à un cours avancé de développement avec R.
Le cours est centré principalement sur le logiciel R et son fonctionnement et même si on utilisera quelques procédures statistiques classiques au cours des manipulations, ça n'est pas un cours de statistiques.
Une première introduction aborde les raisons du choix de ce logiciel pour le traitement des données, son installation, la documentation, les packages, les interfaces utilisateurs disponibles (IDE) et une description de RStudio, l'IDE choisit pour ce cours. (IntroR.ipynb,IntroR.Rnw)
Dans une deuxième partie on présente les concepts de bases : les objets, les fonctions,... (Objet.ipynb, Objet.Rnw)
Dans la troisième partie, on aborde les manipulations de données qui sont des opérations courantes dans la pratique statistique: importation de données, sauvegarde de données et de résultats, traitements des données manquantes, concaténation des niveaux de facteurs,... (ManipDon.ipynb, ManipDon.Rnw). On effectuera quelques traitements statistiques sur les données.
Le traitement statistique s'accompagne d'une visualisation claire et synthétique des résultats, nous décrivons dans la quatrième partie les nombreuses possibilités offertes par R dans ce domaine (GraphiqueR.ipynb, GraphiqueR.Rnw).
Enfin dans la cinquième partie, nous présentons quelques éléments de programmation, comment construire un script R implémentant un algorithme statistique ou une chaine de traitements sur des données. On aborde dans cette partie les capacités de déboguage et de profiling de R et rapidement comment utiliser les ressources multi-coeur actuellement disponibles sur les portables ou serveurs à notre disposition (ProgrammerR.ipynb, ProgrammerR.Rnw).
Pour chacune de ces parties, vous aurez un fichier notebook que vous pourrez utiliser sur le serveur de notebook de GRICAD et un fichier R Markdown notebook que vous pourrez utiliser sur votre portable sous RStudio. Pour en savoir plus sur les notebook
(jupyter, Rmarkdown, https://www.datacamp.com/community/blog/jupyter-notebook-r#gs.6iMBYHw)
Pour chacune de ces parties, vous aurezdes fichiers notebook que vous pourrez utiliser sur [le serveur de notebook de GRICAD](https://jupyterhub.u-ga.fr/hub/login?next=%2Fhub%2Fuser%2Fviryl%2Ftree%3F), une version statique du cours et un fichier [R notebook Markdown](http://rmarkdown.rstudio.com/r_notebooks.html) que vous pourrez utiliser sur votre portable sous RStudio. [Pour en savoir plus sur les notebooks
(jupyter, Rmarkdown)](https://www.datacamp.com/community/blog/jupyter-notebook-r#gs.6iMBYHw)
L'nsemble des consignes et des fichiers utiles à ce cours est stocké dans un projet gitlab de GRICAD, vous avez accès à ce serveur avec votre <identifiant,mot de passe> AGALAN.
L'ensemble des consignes et des fichiers utiles à ce cours est stocké dans le projet "CED-IntroR" du serveur gitlab de GRICAD, vous avez accès à ce serveur avec votre <identifiant,mot de passe> AGALAN.
## Accès et utilisation du gitlab de GRICAD
## La plate-forme gitlab de l'UMS GRICAD
[gricad-gitlab](https://gricad-gitlab.univ-grenoble-alpes.fr/) est une plate-forme de travail collaboratif destinée à l'ensemble de la communauté enseignement-recherche grenobloise. Elle est hébergée et administrée par l'UMS GRICAD .
https://gricad-gitlab.univ-grenoble-alpes.fr/users/sign_in
Il s'agit d'une implémentation du logiciel gitlab community edition, installée sur les serveurs de l'université.
Cette plate-forme permet de créer et de partager des projets, tout en bénéficiant d'un certain nombre de fonctionnalités telles que:
- gestion de version et de dépots (git)
- intégration continue
- ...
Ce cours est associé au projet [CED-IntroR](https://gricad-gitlab.univ-grenoble-alpes.fr/formations-statistiques-R/CED-IntroR). Pour récupérer l'ensemble des fichiers du cours, exécuter dans un terminal, dans un répertoire de travail à votre convenance, la commande:
git clone https://gricad-gitlab.univ-grenoble-alpes.fr/formations-statistiques-R/CED-IntroR.git
Vous récupérez un répertoire CED-IntroR dans lequel figurent, tous les fichiers qui seront utilisés (notebooks, données, scripts R,...).
## Le serveur de notebooks de l'UMS GRICAD
* Connectez vous sur [le serveur de notebook de GRICAD](https://jupyterhub.u-ga.fr/) avec votre compte Agalan.
* Exemple d'utilisation, suivre le cours "Introduction", première partie de ce cours.
- Télécharger le fichier "IntroR.ipynb" figurant dans le répertoire CED-IntroR/notebooks que vous avez récupé sur le gitlab de GRICAD (bouton Upload en haut à droite de l'écran)
- Vous avez dans ce documents deux types de cellules, des cellules de type " Markdown" et des cellules de code R, pour interpréter ces cellules faire shift-return simultanément.
- pour conaitre les quelques commandes d'utilisation d'un notebook, voir le tutorial "Getting started" figurant dans le projet gitlab.
## Installation de R sur votre portable
Pour un meilleur suivi du cours, nous vous conseillons d'installer R (Version 3.4.x au moins) et [RStudio](https://www.rstudio.com/products/RStudio/) sur votre ordinateur personnel , de préférence avant la première séance.
Il s’agit de deux logiciels libres, gratuits, téléchargeables en ligne et fonctionnant sous Windows, Mac-OS et Linux.
Pour installer R, il suffit de se rendre sur une des pages suivantes 2 :
* [Installer R sous Windows](https://cloud.r-project.org/bin/windows/base)
* [Installer R sous Mac](https://cloud.r-project.org/bin/macosx)
[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 :
Nous verrons comment installer de nouveaux package.
## Travailler sur des données personnelles...de préférence
Même si des exemples simples vous seront fournis pour faire quelques exercices, il est toujours plus efficace de s'éxercer sur des données personnelles. Ces données auront déjà été nettoyées en partie pour éviter de perdre du temps sur de la validation de saisie.
## Quelques tutoriaux ou MOOCS en compléùent
Si vous avez des questions, n'hésitez pas à m'envoyer un mail laurence.viry@univ-grenoble-alpes.fr
https://docs.gricad-pages.univ-grenoble-alpes.fr/help/
%% Cell type:code id: tags:
``` R
```
......
{
"cells": [
{
"cell_type": "markdown",
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Introduction\n",
"## Qu'est ce que R? \n",
......
%% Cell type:markdown id: tags:
%% Cell type:code id: tags:
``` R
# 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 pour 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.
## Pourquoi R?
### Avantages
R a des avantages majeurs
* Il est gratuit et le restera puisqu'il est distribué librement sous les termes de la [GNU General Public Licence](http://www.gnu.org/)
* Il est disponible sur Internet, via un grand réseau de serveurs.
* 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; Apple Macintosh OS .
* Il est le produit d'une collaboration internationale entre
statisticiens et informaticiens;
* Il ne limite pas l'utilisateur à un ensemble de procédures ou d'options tout en utilisant les packages déjà intégrés dans R.
6. It can work on objects of unlimited size and complexity with a consistent,
logical expression language;
7. It is supported by comprehensive technical documentation and usercontributed
tutorials (§9). There are also several good textbooks on
statistical methods that use R (or S) for illustration.
8. Every computational step is recorded, and this history can be saved
for later use or documentation.
9. It stimulates critical thinking about problem-solving rather than a
“push the button” mentality.
10. It is fully programmable, with its own sophisticated computer language
(§4). Repetitive procedures can easily be automated by user-written scripts (§3.5). It is easy to write your own functions (§B),
and not too difficult to write whole packages if you invent some new
analysis;
11. All source code is published, so you can see the exact algorithms being
used; also, expert statisticians can make sure the code is correct;
12. It can exchange data in MS-Excel, text, fixed and delineated formats
(e.g. CSV), so that existing datasets are easily imported (§6), and results
computed in R are easily exported (§7).
13. Most programs written for the commercial S-PLUS program will run
unchanged, or with minor changes, in R (§2.3.1
### Inconvénients
R présentent quelques inconvénients:
* 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).
* 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.
* L'utilisateur doit apprendre un langage, à la fois pour les commandes mais aussi pour la spécification des analyses statistiques.
### Alternatives
There are many ways to do computational statistics; this section discusses
them in relation to R. None of these programs are open-source, meaning
that you must trust the company to do the computations correctly.
#### S-PLUS
#### Statistical packages : SPSS, BMDP,SAS, Statistica, Minitab, Systat,Genstat,...
#### Applied mathematics programs
## 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**.
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.
Les fichiers pour installer R, à partir des sources ou des exécutables, sont distribués à partir de sites internet du [CRAN](https://cran.r-project.org) où se trouvent aussi les instructions à suivre pour l'installation sur chaque système.
## Utiliser R (Rossiter-RIntro-ITC.pdf)
Il y a plusieurs méthodes pour travailler avec R
* En mode commande (CLI).
* à partir de l'interface de développement(IDE) RSudio.
* en utilisant le module ESS(Emacs Speaks Statistics) de l'éditeur **emacs**.
Il existe d'autres interfaces de développement, suivant les systèmes d'exploitation. On utilisera dans ce cours **RStudio** qui est l'IDE la plus couramment utilisée.
## 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
bash% R
```
%% Cell type:markdown id: tags:
# 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()
%% 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