Aide-mémoire R
Dernière mise à jour
Hello World et affectation
L'opérateur d'affectation idiomatique de R est <- (l'opérateur = fonctionne aussi).
| Opération | Syntaxe |
|---|---|
| Afficher une valeur | print("Hello, World!") |
| Affichage automatique (console) | "Hello, World!" |
| Concaténer et afficher | cat("Hi", name, "\n") |
| Affecter (idiomatique) | x <- 5 |
| Affecter (également valide) | x = 5 |
| Affectation à droite | 5 -> x |
| Commentaire | # this is a comment |
| Exécuter un script | Rscript app.R |
Types de données et vecteurs
Le vecteur est la structure de données fondamentale de R ; même une valeur unique est un vecteur de longueur 1.
| Opération | Syntaxe |
|---|---|
| Vecteur numérique | v <- c(1, 2, 3) |
| Vecteur de caractères | s <- c("a", "b") |
| Vecteur logique | b <- c(TRUE, FALSE) |
| Séquence d'entiers | 1:10 |
| Séquence avec pas | seq(0, 1, by = 0.1) |
| Répéter des valeurs | rep(0, times = 5) |
| Types de base | numeric, character, logical, integer, complex |
| Vérifier / convertir le type | class(x), as.numeric("42") |
Opérations sur les vecteurs
Les opérations sont vectorisées et s'appliquent élément par élément ; l'indexation commence à 1.
| Opération | Syntaxe |
|---|---|
| Accéder à un élément (commence à 1) | v[1] |
| Extraire une plage | v[2:4] |
| Filtrage logique | v[v > 2] |
| Retirer un élément | v[-1] |
| Maths élément par élément | v * 2, v1 + v2 |
| Longueur | length(v) |
| Réducteurs courants | sum(v), mean(v), max(v) |
| Trier / inverser | sort(v), rev(v) |
| Vecteur nommé | c(a = 1, b = 2) |
Data frames
Un data frame est un tableau de colonnes, chacune étant un vecteur de longueur égale.
| Opération | Syntaxe |
|---|---|
| Créer un data frame | df <- data.frame(name = c("Ada"), age = c(30)) |
| Premières / dernières lignes | head(df), tail(df) |
| Dimensions | nrow(df), ncol(df), dim(df) |
| Noms de colonnes | names(df), colnames(df) |
| Sélectionner une colonne | df$age ou df[["age"]] |
| Sélectionner lignes / colonnes | df[1, ], df[, "age"] |
| Filtrer les lignes | df[df$age > 18, ] |
| Ajouter une colonne | df$adult <- df$age >= 18 |
| Statistiques de synthèse | summary(df) |
| Aperçu de la structure | str(df) |
Facteurs et listes
Les facteurs stockent des données catégorielles ; les listes contiennent des éléments de types variés.
| Opération | Syntaxe |
|---|---|
| Créer un facteur | f <- factor(c("low", "high")) |
| Niveaux du facteur | levels(f) |
| Facteur ordonné | factor(x, ordered = TRUE) |
| Compter par niveau | table(f) |
| Créer une liste | l <- list(name = "Ada", scores = c(1, 2)) |
| Accéder par nom | l$name ou l[["name"]] |
| Accéder par position | l[[1]] |
| Sous-liste (reste une liste) | l[1] |
| Longueur / noms | length(l), names(l) |
Contrôle de flux
Les conditions vont entre parenthèses et les blocs entre accolades.
| Opération | Syntaxe |
|---|---|
| If / else if / else | if (x > 0) { ... } else if (x < 0) { ... } else { ... } |
| If-else vectorisé | ifelse(v > 0, "pos", "neg") |
| Boucle for | for (i in 1:10) { ... } |
| For sur un vecteur | for (x in v) { ... } |
| Boucle while | while (x < 100) { ... } |
| Repeat avec break | repeat { if (done) break } |
| Switch | switch(key, a = 1, b = 2) |
| Opérateurs logiques | &&, ||, ! (scalaire) ; &, | (vecteur) |
Fonctions
Les fonctions sont de première classe ; la dernière expression évaluée est renvoyée.
| Opération | Syntaxe |
|---|---|
| Définir une fonction | add <- function(a, b) { a + b } |
| Retour explicite | return(a + b) |
| Argument par défaut | greet <- function(name = "World") { ... } |
| Argument variadique | f <- function(...) { sum(...) } |
| Appel par nom | box(w = 2, h = 3) |
| Fonction anonyme | function(x) x * 2 |
| Anonyme (forme abrégée) | \(x) x * 2 |
| Passer à une fonction d'ordre supérieur | sapply(1:3, function(x) x^2) |
La famille apply
Appliquer une fonction sur des données sans écrire de boucles explicites.
| Fonction | Ce qu'elle fait |
|---|---|
apply(m, 1, sum) | Appliquer sur les lignes (1) ou colonnes (2) d'une matrice |
sapply(v, f) | Appliquer sur un vecteur, simplifier en vecteur/matrice |
lapply(v, f) | Appliquer sur un vecteur, renvoie toujours une liste |
vapply(v, f, numeric(1)) | Comme sapply mais avec un type de retour vérifié |
mapply(f, a, b) | Appliquer sur plusieurs vecteurs en parallèle |
tapply(x, group, mean) | Appliquer une fonction par groupe |
Map(f, a, b) | Apply multivarié renvoyant une liste |
Reduce(+, v) | Replier un vecteur avec une fonction binaire |
Fonctions courantes de manipulation et de statistiques
Fonctions de base fréquemment utilisées pour résumer et remodeler les données.
| Fonction | Ce qu'elle fait |
|---|---|
mean(v) / median(v) | Moyenne / valeur médiane |
sd(v) / var(v) | Écart-type / variance |
min(v) / max(v) / range(v) | Plus petit / plus grand / les deux |
quantile(v) | Quantiles (ex. quartiles) |
table(x) | Décomptes de fréquence des valeurs |
unique(v) / duplicated(v) | Valeurs distinctes / indicateurs de doublons |
is.na(v) / na.omit(df) | Trouver / supprimer les valeurs manquantes |
aggregate(y ~ g, df, mean) | Résumer y par groupe g |
order(v) | Ordre des indices pour le tri |
cor(x, y) | Corrélation entre deux vecteurs |
La syntaxe R que vous utilisez le plus, sur une seule page. Cet aide-mémoire R est une référence rapide pour le cœur du langage - affectation et types de données, vecteurs et opérations vectorielles, data frames, facteurs et listes, contrôle de flux, fonctions, ainsi que la famille apply employée dans toute l'analyse de données rstats.
Tout ce qui figure ici est du R de base et s'exécute sur une installation standard - aucun paquet supplémentaire requis. Copiez ce dont vous avez besoin, ou essayez chaque extrait en direct dans le playground R - aucune configuration nécessaire.
FAQ de l'aide-mémoire R
Cet aide-mémoire R est-il gratuit ?
Les vecteurs R sont-ils vraiment indexés à partir de 1 ?
v[1] renvoie le premier élément et v[length(v)] renvoie le dernier. Les indices négatifs ont une signification particulière - v[-1] retire le premier élément au lieu de compter depuis la fin. Cette convention basée sur 1 s'applique aux vecteurs, aux listes et aux data frames de la même manière.Qu'est-ce qu'un data frame en R ?
df[rows, columns], sélectionnez une colonne avec df$name, et l'inspectez avec str(df) ou summary(df).