Menu
Coddy logo textTech

Vectores con nombre

Parte de la sección Fundamentos del Journey de R de Coddy — lección 62 de 78.

Hasta ahora, has accedido a los elementos de un vector utilizando posiciones numéricas. ¿Pero qué pasaría si pudieras acceder a ellos mediante nombres significativos en su lugar? Los vectores con nombre te permiten asignar etiquetas a cada elemento, lo que hace que tu código sea más legible y autodocumentado.

Puedes crear un vector con nombre proporcionando los nombres durante la creación:

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

Salida:

  alice     bob charlie 
     25      30      28

Para acceder a los elementos por nombre, use el nombre como una cadena entre corchetes:

print(ages["bob"])

Salida:

bob 
 30

También puedes añadir nombres a un vector existente utilizando la función names():

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

Salida:

math 
  85

Los vectores con nombre son especialmente útiles al trabajar con datos que tienen etiquetas naturales, como almacenar las calificaciones de los estudiantes por asignatura o los precios por nombre de producto.

challenge icon

Desafío

Fácil

Recibirás dos líneas de entrada:

  1. Una lista de nombres de productos separados por comas (por ejemplo, laptop,phone,tablet,headphones)
  2. Una lista de precios correspondientes separados por comas (por ejemplo, 999,699,449,199)

Realiza las siguientes operaciones:

  1. Crea un vector numérico a partir de los precios
  2. Asigna los nombres de los productos al vector utilizando la función names()
  3. Imprime el vector con nombre completo
  4. Imprime el precio del segundo producto accediendo a él mediante su nombre
  5. Imprime el precio del último producto accediendo a él mediante su nombre

Por ejemplo, si las entradas son:

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

La salida debería ser:

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

Nota: Accede al segundo y al último elemento por sus nombres (como cadenas de texto), no por su índice numérico.

Hoja de referencia

Los vectores con nombre le permiten asignar etiquetas a cada elemento, haciendo que los elementos sean accesibles mediante nombres significativos en lugar de solo posiciones numéricas.

Cree un vector con nombre proporcionando los nombres durante la creación:

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

Acceda a los elementos por nombre utilizando el nombre como una cadena de texto dentro de corchetes:

ages["bob"]  # Devuelve el elemento llamado "bob"

Agregue nombres a un vector existente utilizando la función names():

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

Pruébalo tú mismo

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

# Analizar las entradas separadas por comas
product_names <- strsplit(products_input, ",")[[1]]
price_values <- strsplit(prices_input, ",")[[1]]

# TODO: Escribe tu código a continuación
# 1. Crear un vector numérico a partir de los precios
# 2. Asignar los nombres de los productos al vector usando names()
# 3. Imprimir el vector con nombre completo
# 4. Imprimir el precio del segundo producto accediendo a él mediante su nombre
# 5. Imprimir el precio del último producto accediendo a él mediante su nombre
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos