01 75 60 34 00 | conseil@ensae.fr | Prenez RDV |

R intermédiaire

Prochaine session 19 et 20 nov. 2026 Session garantie
S'inscrire
Voir les autres sessions
R intermédiaire

Objectifs pédagogiques

  • Acquérir les outils et techniques permettant d’effectuer des traitements sur les données, plus rapidement et plus efficacement.
  • Connaître les principaux packages d’analyse statistique.

Programme détaillé

Le livre R pour la statistique et la science des données vous sera offert lors de cette formation

Cette formation s’adresse à des stagiaires ayant déjà manipulé le logiciel R, désireux d’approfondir leurs connaissances sur ses fonctionnalités.

Une première partie est consacrée aux fonctionnalités de base avec un accent mis sur la manipulation de jeux de données, le graphe et la programmation.

Une seconde partie est consacrée à la prise en main de packages statistiques pour la régression linéaire, la régression logistique ou l’analyse factorielle.

Le logiciel est mis en œuvre au travers d’exercices concrets d’application.

Manipulation de données dans R 6h

  • Environnement tidyverse
  • Importation et exportation
  • Création et recodage de variables
  • Sélection et regroupement de variables
  • Manipulation des dates
  • Fusion de tableaux de données
  • Premières analyses descriptives
  • Les fonctions apply

Le graphe avec R 2h

  • Manipulation des fenêtres graphiques
  • Graphes de base
  • Personnalisation de graphes

La programmation avec R 2h

  • Création de ses propres fonctions R
  • Boucles
  • Structures de contrôle

Packages 2h

  • Focus sur quelques packages en particulier pour des analyses statistiques poussées : régression linéaire, régression logistique, arbres de décision, analyse de données.

Public visé

Toute personne souhaitant se perfectionner en R : statisticiens, data analysts, chargés d’études…

Prérequis

Parmi nos formations au langage R, cette formation est le niveau 2. Elle requiert une connaissance du logiciel R (maîtrise du contenu de la formation niveau 1 - R initiation).

Un débutant ou un ancien utilisateur ayant peu de pratique s’orientera donc vers la formation R initiation. Si au contraire vous êtes déjà un utilisateur avancé de R, vous serez peut-être intéressé(e) par nos formations R Expert.

Approche pédagogique

Moyens pédagogiques
Exposé théorique de concepts Applications pratiques sur ordinateur Échanges sur les pratiques et expériences des participants Temps de questions / réponses Exercices, quiz, etc.
Méthodes pédagogiques
Méthode expositive Méthode active
Satisfaction globale
★★★★★ ★★★★★
4,5/5

Calculés à partir de 196 avis recueillis depuis 08/03/2016, lors de 28 sessions de cette formation.

Contenu
★★★★★ ★★★★★ 4,3/5
Durée et rythme
★★★★★ ★★★★★ 4,2/5
Formateur
★★★★★ ★★★★★ 4,7/5
Supports et ressources
★★★★★ ★★★★★ 4,6/5

Tidyverse ou R de base : deux dialectes pour un même langage

Deux scripts R qui font la même chose peuvent sembler écrits dans des langages différents. L’un enchaîne filter(), group_by() et summarise(), l’autre utilise des crochets, subset() et aggregate(). Ce sont deux dialectes du même langage, et un utilisateur régulier de R rencontrera forcément les deux.

D’où vient le tidyverse

Le tidyverse est un ensemble de packages (dplyr, tidyr, readr, ggplot2, lubridate…) conçus autour de principes communs, en grande partie sous l’impulsion de Hadley Wickham. Ils sont réunis sous ce nom depuis 2016. Leur point de départ est la notion de données tidy (« bien rangées ») : une ligne par observation, une colonne par variable. Les fonctions portent des noms de verbes et s’enchaînent avec un opérateur, le pipe. D’abord apporté par le package magrittr (%>%), il est intégré à R depuis la version 4.1.0, publiée en mai 2021, sous la forme |>.

La même opération, deux écritures

Revenu moyen par région, chez les 30 ans et plus :

# R de base
aggregate(revenu ~ region, data = subset(enquete, age >= 30), FUN = mean)

# tidyverse
library(dplyr)
enquete |>
  filter(age >= 30) |>
  group_by(region) |>
  summarise(revenu_moyen = mean(revenu))

Les deux résultats peuvent pourtant différer. La version formule d’aggregate() écarte par défaut les lignes où revenu manque (na.action = na.omit). Avec summarise(), mean() renvoie NA pour toute région comportant une valeur manquante, sauf à écrire mean(revenu, na.rm = TRUE). Connaître ces comportements par défaut évite des écarts difficiles à expliquer entre deux programmes censés être équivalents.

Lequel choisir ?

Le tidyverse se lit souvent plus facilement, surtout lorsque les opérations s’enchaînent, et ses fonctions ont un comportement homogène. R de base n’exige aucune dépendance, ce qui compte pour du code destiné à durer, à tourner sur un serveur ou à être intégré dans un package. Il reste indispensable pour lire le code existant, et beaucoup de fonctions statistiques (lm(), glm(), t.test()) en relèvent. La famille apply (lapply(), sapply(), tapply()) en est un autre pilier : elle applique une fonction à chaque élément d’une liste ou à chaque groupe, sans écrire de boucle.

En pratique, la plupart des utilisateurs mélangent les deux. L’important est de rester cohérent au sein d’un même script.

Pour écrire ses propres fonctions et les diffuser sous forme de package, voir la formation R expert — Programmation.