Menu
Coddy logo textTech

Vecteurs nommés

Fait partie de la section Fondamentaux du Journey R de Coddy — leçon 62 sur 78.

Jusqu'à présent, vous avez accédé aux éléments d'un vecteur en utilisant des positions numériques. Mais et si vous pouviez y accéder par des noms significatifs à la place ? Les vecteurs nommés vous permettent d'attribuer des étiquettes à chaque élément, rendant votre code plus lisible et auto-documenté.

Vous pouvez créer un vecteur nommé en fournissant des noms lors de la création :

ages <- c(alice = 25, bob = 30, charlie = 28)
print(ages)

Sortie :

  alice     bob charlie 
     25      30      28

Pour accéder aux éléments par leur nom, utilisez le nom sous forme de chaîne de caractères entre crochets :

print(ages["bob"])

Sortie :

bob 
 30

Vous pouvez également ajouter des noms à un vecteur existant en utilisant la fonction names() :

scores <- c(85, 92, 78)
names(scores) <- c("math", "science", "english")
print(scores["math"])

Sortie :

math 
  85

Les vecteurs nommés sont particulièrement utiles lorsque l'on travaille avec des données qui possèdent des étiquettes naturelles, comme le stockage des notes d'étudiants par matière ou des prix par nom de produit.

challenge icon

Défi

Facile

Vous recevrez deux lignes d'entrée :

  1. Une liste de noms de produits séparés par des virgules (par exemple, laptop,phone,tablet,headphones)
  2. Une liste de prix correspondants séparés par des virgules (par exemple, 999,699,449,199)

Effectuez les opérations suivantes :

  1. Créez un vecteur numérique à partir des prix
  2. Attribuez les noms des produits au vecteur en utilisant la fonction names()
  3. Affichez l'intégralité du vecteur nommé
  4. Affichez le prix du deuxième produit en y accédant par son nom
  5. Affichez le prix du dernier produit en y accédant par son nom

Par exemple, si les entrées sont :

apple,banana,orange,grape
2,1,3,4

La sortie devrait être :

apple banana orange  grape 
    2      1      3      4 
banana 
     1 
grape 
    4

Remarque : Accédez au deuxième et au dernier élément par leurs noms (en tant que chaînes de caractères), et non par leur index numérique.

Aide-mémoire

Les vecteurs nommés vous permettent d'attribuer des étiquettes à chaque élément, rendant les éléments accessibles par des noms significatifs au lieu de simples positions numériques.

Créez un vecteur nommé en fournissant des noms lors de la création :

ages <- c(alice = 25, bob = 30, charlie = 28)

Accédez aux éléments par leur nom en utilisant le nom comme une chaîne de caractères entre crochets :

ages["bob"]  # Retourne l'élément nommé "bob"

Ajoutez des noms à un vecteur existant en utilisant la fonction names() :

scores <- c(85, 92, 78)
names(scores) <- c("math", "science", "english")
scores["math"]  # Retourne 85

Essayez vous-même

# Lire l'entrée
con <- file("stdin", "r")
products_input <- suppressWarnings(readLines(con, n = 1))
prices_input <- suppressWarnings(readLines(con, n = 1))
close(con)

# Analyser les entrées séparées par des virgules
product_names <- strsplit(products_input, ",")[[1]]
price_values <- strsplit(prices_input, ",")[[1]]

# TODO: Écrivez votre code ci-dessous
# 1. Créer un vecteur numérique à partir des prix
# 2. Attribuer les noms des produits au vecteur en utilisant names()
# 3. Afficher l'ensemble du vecteur nommé
# 4. Afficher le prix du deuxième produit en y accédant par son nom
# 5. Afficher le prix du dernier produit en y accédant par son nom
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux