Structures de données en R
Structures de données en R
Programming, Math · course
Fiche de révisionFiche de cours
Rédigée à partir de ce document, puis vérifiée avant publication.
Les structures de données en R sont essentielles pour le stockage et la manipulation des données. Cet article couvre les différents types d'objets R, notamment les vecteurs, matrices, arrays, listes, data frames et facteurs. Vous trouverez des exemples pratiques pour chaque type, ainsi que des méthodes pour extraire et remplacer des éléments. Cela vous aidera à mieux comprendre comment gérer vos données en R.
En R, on trouve six types d'objets servant de structure de données : vecteur, matrice, array, liste, data frame et facteur. Les objets atomiques, comme les vecteurs, matrices et arrays, doivent contenir des données du même type. En revanche, les objets récursifs, comme les listes et data frames, peuvent contenir des objets de types variés.
Un vecteur est l'objet le plus simple en R. Voici un exemple :
vec <- c(3.5, 7.8, 9.9, 5.7)
Pour afficher le vecteur, vous pouvez simplement taper vec :
vec
Ce qui donnera :
[1] 3.5 7.8 9.9 5.7
Une matrice est une généralisation à deux dimensions d'un vecteur. Voici un exemple :
mat <- matrix(c(TRUE, TRUE, FALSE, TRUE, FALSE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, TRUE), ncol = 3, nrow = 4)
Pour afficher la matrice, tapez mat :
mat
Un array généralise le vecteur et la matrice à un nombre quelconque de dimensions. Voici un exemple d'array à trois dimensions :
arr <- array(c(2, 4, 3, 1, 6, 3, 9, 2, 6, 3, 8, 0, 5, 3, 2, 8, 7, 1, 2, 6, 5, 3, 8, 5), dim = c(2, 3, 4))
Une liste est un objet récursif qui peut contenir d'autres objets de types variés. Voici un exemple :
liste <- list(matrix(c(2, 4, 3, 1), nrow = 2, ncol = 2), list(c(2, 3), c(8)), as.data.frame(matrix(c(2, 4, 3, 1, 5, 3), nrow = 3, ncol = 2)))
Le data frame est un type particulier de liste, avec des caractéristiques similaires aux matrices. Voici un exemple :
dat <- data.frame(V1 = c(3.5, 7.8, 9.9, 5.7), V2 = c("matin", "après-midi", "soir", "nuit"), V3 = c(TRUE, TRUE, FALSE, TRUE), stringsAsFactors = FALSE)
Les facteurs sont utilisés pour stocker des valeurs observées d'une variable catégorique :
fac <- as.factor(c(5, 2, 5, 5))
L'extraction d'éléments est une opération courante lors de l'analyse de données. En R, il existe plusieurs opérateurs d'indexation pour extraire des éléments d'un objet.
Les trois opérateurs principaux sont [, [[ et $. L'opérateur [ permet d'extraire plusieurs éléments tout en préservant la structure de l'objet.
Voici un exemple d'extraction d'éléments d'un vecteur :
vec[c(2, 4)]
Pour extraire un élément d'une liste, vous pouvez utiliser [[ :
extrait_2_liste <- liste[[1]]
En plus des opérateurs, certaines fonctions comme head et tail permettent d'extraire des éléments. Par exemple :
head(vec, n = 2)
Pour remplacer des éléments, vous pouvez combiner une extraction avec un opérateur d'assignation :
vec[3] <- 6.1
Les types d'objets en R incluent les vecteurs, matrices, arrays, listes, data frames et facteurs. Chacun a ses propres caractéristiques et usages.
Un vecteur peut être créé en utilisant la fonction c(). Par exemple, vec <- c(1, 2, 3) crée un vecteur contenant les nombres 1, 2 et 3.
Une liste peut contenir des objets de types variés, tandis qu'un data frame est une structure tabulaire où chaque colonne doit avoir la même longueur.
Pour extraire des éléments d'un data frame, vous pouvez utiliser l'opérateur $ pour accéder à une colonne par son nom, ou [ pour extraire des lignes et colonnes spécifiques.
Pour remplacer des éléments dans un vecteur, vous pouvez utiliser l'indexation. Par exemple, vec[1] <- 10 remplace le premier élément par 10.