Menu
Coddy logo textTech

Vetores nomeados

Parte da seção Fundamentos do Journey de R da Coddy — lição 62 de 78.

Até agora, você acessou elementos de vetores usando posições numéricas. Mas e se você pudesse acessá-los por nomes significativos em vez disso? Vetores nomeados permitem que você atribua rótulos a cada elemento, tornando seu código mais legível e autodocumentado.

Você pode criar um vetor nomeado fornecendo nomes durante a criação:

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

Saída:

  alice     bob charlie 
     25      30      28

Para acessar elementos por nome, use o nome como uma string dentro de colchetes:

print(ages["bob"])

Saída:

bob 
 30

Você também pode adicionar nomes a um vetor existente usando a função names():

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

Saída:

math 
  85

Vetores nomeados são especialmente úteis ao trabalhar com dados que possuem rótulos naturais, como armazenar notas de alunos por disciplina ou preços por nome de produto.

challenge icon

Desafio

Fácil

Você receberá duas linhas de entrada:

  1. Uma lista de nomes de produtos separados por vírgula (ex: laptop,phone,tablet,headphones)
  2. Uma lista de preços correspondentes separados por vírgula (ex: 999,699,449,199)

Realize as seguintes operações:

  1. Crie um vetor numérico a partir dos preços
  2. Atribua os nomes dos produtos ao vetor usando a função names()
  3. Imprima o vetor nomeado completo
  4. Imprima o preço do segundo produto acessando-o pelo seu nome
  5. Imprima o preço do último produto acessando-o pelo seu nome

Por exemplo, se as entradas forem:

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

A saída deve ser:

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

Nota: Acesse o segundo e o último elementos pelos seus nomes (como strings), não pelo índice numérico.

Folha de consulta

Vetores nomeados permitem que você atribua rótulos a cada elemento, tornando os elementos acessíveis por nomes significativos em vez de apenas posições numéricas.

Crie um vetor nomeado fornecendo nomes durante a criação:

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

Acesse elementos por nome usando o nome como uma string dentro de colchetes:

ages["bob"]  # Retorna o elemento chamado "bob"

Adicione nomes a um vetor existente usando a função names():

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

Experimente você mesmo

# Ler a entrada
con <- file("stdin", "r")
products_input <- suppressWarnings(readLines(con, n = 1))
prices_input <- suppressWarnings(readLines(con, n = 1))
close(con)

# Analisar as entradas separadas por vírgula
product_names <- strsplit(products_input, ",")[[1]]
price_values <- strsplit(prices_input, ",")[[1]]

# TODO: Escreva seu código abaixo
# 1. Criar um vetor numérico a partir dos preços
# 2. Atribuir os nomes dos produtos ao vetor usando names()
# 3. Imprimir todo o vetor nomeado
# 4. Imprimir o preço do segundo produto acessando-o pelo seu nome
# 5. Imprimir o preço do último produto acessando-o pelo seu nome
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos