English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La liste est une collection d'objets dans le langage R, utilisée pour stocker différents types de données, qui peuvent être des nombres, des chaînes de caractères, des vecteurs, une autre liste, etc., bien sûr, elle peut également contenir des matrices et des fonctions.
Le langage R crée des listes en utilisant la fonction list().
Dans l'exemple suivant, nous créons une liste qui contient des chaînes de caractères, des vecteurs et des nombres :
list_data <- list("w3codebox", "google", c(11,22,33), 123, 51.23, 119.1) print(list_data)
Le résultat de l'exécution du code suivant est :
[[1]] [1] "w3codebox" [[2]] [1] "google" [[3]] [1] 11 22 33 [[4]] [1] 123 [[5]] [1] 51.23
Nous pouvons utiliser la fonction names() pour nommer les éléments de la liste :
# La liste contient des vecteurs, des matrices et des listes list_data <- list(c("Google","w3codebox","Taobao"), matrix(c(1,2,3,4,5,6), nrow = 2), list("w3codebox",12.3)) # Nommer les éléments de la liste names(list_data) <- c("Sites", "Numbers", "Lists") # Affichage de la liste print(list_data)
Le résultat de l'exécution du code suivant est :
$Sites [1] "Google" "w3codebox" "Taobao" $Numbers [,1] [,2] [,3] [1,] 1 3 5 [2,] 2 4 6 $Lists $Lists[[1]] [1] "w3codebox" $Lists[[2]] [1] 12.3
Les éléments de la liste peuvent être accédés par index, si nous utilisons pour names() Après avoir nommé la fonction, nous pouvons également l'accéder par son nom :
# La liste contient des vecteurs, des matrices et des listes list_data <- list(c("Google","w3codebox","Taobao"), matrix(c(1,2,3,4,5,6), nrow = 2), list("w3codebox",12.3)) # Nommer les éléments de la liste names(list_data) <- c("Sites", "Numbers", "Lists") # Affichage de la liste print(list_data[1]) # Accès au troisième élément de la liste print(list_data[3]) # Accès à l'élément du premier vecteur print(list_data$Numbers)
Le résultat de l'exécution du code suivant est :
$Sites [1] "Google" "w3codebox" "Taobao" $Lists $Lists[[1]] [1] "w3codebox" $Lists[[2]] [1] 12.3 [,1] [,2] [,3] [1,] 1 3 5 [2,] 2 4 6
Nous pouvons effectuer des opérations d'ajout, de suppression et de mise à jour sur la liste, comme dans l'exemple suivant :
# La liste contient des vecteurs, des matrices et des listes list_data <- list(c("Google","w3codebox","Taobao"), matrix(c(1,2,3,4,5,6), nrow = 2), list("w3codebox",12.3)) # Nommer les éléments de la liste names(list_data) <- c("Sites", "Numbers", "Lists") # Ajout d'un élément list_data[4] <- "Nouvel élément" print(list_data[4]) # Suppression d'un élément list_data[4] <- NULL # La suppression donne NULL print(list_data[4]) # Mise à jour de l'élément list_data[3] <- "Je remplace le troisième élément" print(list_data[3])
Le résultat de l'exécution du code suivant est :
[[1]] [1] "Nouvel élément" $<NA> NULL $Lists [1] "Je remplace le troisième élément"
Nous pouvons utiliser la fonction c() pour fusionner plusieurs listes en une seule liste :
# Création de deux listes list1 <- list(1,2,3) list2 <- list("Google","w3codebox","Taobao") # Fusion de listes merged.list <- c(list1,list2) # Affichage de la liste fusionnée print(merged.list)
Le résultat de l'exécution du code suivant est :
[[1]] [1] 1 [[2]] [1] 2 [[3]] [1] 3 [[4]] [1] "Google" [[5]] [1] "w3codebox" [[6]] [1] "Taobao"
Pour convertir une liste en vecteur, vous pouvez utiliser la fonction unlist(), qui convertit une liste en vecteur et facilite les opérations arithmétiques :
# Création de la liste list1 <- list(1:5) print(list1) list2 <-list(10:14) print(list2) # Conversion en vecteur v1 <- unlist(list1) v2 <- unlist(list2) print(v1) print(v2) # Addition de deux vecteurs result <- v1+v2 print(result)
Le résultat de l'exécution du code suivant est :
[[1]] [1] 1 2 3 4 5 [[1]] [1] 10 11 12 13 14 [1] 1 2 3 4 5 [1] 10 11 12 13 14 [1] 11 13 15 17 19