Listes nommées
Fait partie de la section Fondamentaux du Journey R de Coddy — leçon 74 sur 78.
Tout comme les vecteurs nommés, les listes peuvent avoir des noms attribués à leurs éléments. Cela rend votre code plus lisible et vous permet d'accéder aux éléments par des étiquettes significatives au lieu de positions numériques.
Vous pouvez attribuer des noms lors de la création de la liste :
person <- list(name = "Alice", age = 25, active = TRUE)
print(person)Sortie :
$name
[1] "Alice"
$age
[1] 25
$active
[1] TRUERemarquez comment la sortie affiche maintenant $name au lieu de [[1]]. Pour accéder aux éléments nommés, utilisez l'opérateur $ :
person <- list(name = "Alice", age = 25, active = TRUE)
print(person$age)Sortie :
[1] 25Vous pouvez également utiliser des doubles crochets avec le nom sous forme de chaîne de caractères, ce qui est utile lorsque le nom est stocké dans une variable :
person <- list(name = "Alice", age = 25)
print(person[["name"]])Sortie :
[1] "Alice"Modifier des éléments nommés fonctionne de la même manière. Utilisez $ pour modifier des valeurs existantes ou en ajouter de nouvelles :
person <- list(name = "Alice", age = 25)
person$age <- 26
person$city <- "Paris"
print(person)Sortie :
$name
[1] "Alice"
$age
[1] 26
$city
[1] "Paris"Défi
FacileVous recevrez trois lignes d'entrée :
- Un titre de livre (par exemple,
The Great Gatsby) - Un auteur de livre (par exemple,
F. Scott Fitzgerald) - L'année de publication (par exemple,
1925)
Effectuez les opérations suivantes :
- Créez une liste nommée appelée
bookavec trois éléments :title,author, etyear(convertissez l'année en numérique) - Affichez le titre du livre en utilisant l'opérateur
$ - Affichez l'année du livre en utilisant des doubles crochets avec le nom sous forme de chaîne de caractères
- Mettez à jour
yearpour qu'elle soit 1 an plus tard en utilisant l'opérateur$ - Ajoutez un nouvel élément appelé
availableavec la valeurTRUE - Affichez la liste complète mise à jour
Par exemple, si les entrées sont :
1984
George Orwell
1949La sortie devrait être :
[1] "1984"
[1] 1949
$title
[1] "1984"
$author
[1] "George Orwell"
$year
[1] 1950
$available
[1] TRUEExplication :
book$titleaffiche la valeur du titrebook[["year"]]affiche l'année d'origine- L'année est mise à jour de 1949 à 1950
- Un nouvel élément
availableest ajouté avec la valeurTRUE
Aide-mémoire
Les listes peuvent avoir des noms attribués à leurs éléments pour une meilleure lisibilité et un accès par des étiquettes significatives.
Créez une liste nommée en attribuant des noms lors de la création :
person <- list(name = "Alice", age = 25, active = TRUE)Accédez aux éléments nommés en utilisant l'opérateur $ :
person$age # Retourne 25Accédez aux éléments nommés en utilisant des doubles crochets avec le nom sous forme de chaîne de caractères :
person[["name"]] # Retourne "Alice"Modifiez des éléments nommés existants :
person$age <- 26Ajoutez de nouveaux éléments nommés :
person$city <- "Paris"Essayez vous-même
# Lire l'entrée
con <- file("stdin", "r")
title <- suppressWarnings(readLines(con, n = 1))
author <- suppressWarnings(readLines(con, n = 1))
year <- suppressWarnings(readLines(con, n = 1))
close(con)
# TODO: Écrivez votre code ci-dessous
# 1. Créer une liste nommée 'book' avec les éléments : title, author, et year (convertir year en numérique)
# 2. Afficher le titre du livre en utilisant l'opérateur $
# 3. Afficher l'année du livre en utilisant des doubles crochets avec le nom comme chaîne de caractères
# 4. Mettre à jour l'année pour qu'elle soit 1 an plus tard en utilisant l'opérateur $
# 5. Ajouter un nouvel élément appelé 'available' avec la valeur TRUE
# 6. Afficher la liste complète mise à jourCette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs - Partie 2
Opérateurs logiques (AND, OR)Opérateurs logiques - Partie 2 (NOT)Récapitulatif - Logique simpleLogique vectorisée - Partie 1Logique vectorisée - Partie 27Calculateur de partage d'addition
Message de bienvenueRécupérer la saisie utilisateur10FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz2Variables et types de données
Type de données numériqueType de données entierType de données caractèreType de données logiqueVérification des types de donnéesConventions de nommageValeurs manquantes : NARécapitulatif - Création de variables8Boucles
Boucle ForBoucle WhileBreakSuivant (Continue)Récapitulatif - FactorielleGénération de séquences (seq, :)Boucles imbriquéesRécapitulatif - Saisie dynamique11Vecteurs
Créer des vecteurs avec c()Accéder aux éléments d'un vecteurModifier des vecteursOpérations sur les vecteursRécapitulatif - Vecteur de prixRécapitulatif - Vecteur inverséVecteurs nommés14Les listes en R
Créer des listesAccéder aux éléments d'une listeModifier des listesListes nomméesRécapitulatif - Liste de produits3Opérateurs, partie 1
Opérateurs arithmétiquesDivision entière et moduloOpérateurs d'affectationRécapitulatif - Mathématiques simplesOpérateurs de comparaison6Entrées/Sorties de base
Affichage avec PrintCat pour l'affichageAffichage avec des variablesLire l'entrée avec readline()Bases de la conversion de typesRécapitulatif - Calculateur d'âgeRécapitulatif - Vrai ou Faux9Fonctions
Déclarer une fonctionArguments de fonctionValeurs de retourRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs de paramètres par défaut