English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La lista es una colección de objetos en R, que se puede usar para guardar diferentes tipos de datos, como números, cadenas de caracteres, vectores, otra lista, etc., por supuesto, también puede contener matrices y funciones.
En R se crea una lista utilizando la función list().
Como se muestra en el siguiente ejemplo, creamos una lista que contiene cadenas de caracteres, vectores y números:
list_data <- list("w3codebox", "google", c(11,22,33), 123, 51.23, 119.1) print(list_data)
El resultado de ejecutar el código anterior es:
[[1]] [1] "w3codebox" [[2]] [1]] "google" [[3]] [1] 11 22 33 [[4]] [1] 123 [[5]] [1] 51.23
Podemos usar la función names() para nombrar los elementos de la lista:
# La lista contiene vectores, matrices y listas list_data <- list(c("Google","w3codebox","Taobao"), nrow =1,2,3,4,5,6), nrow = 2), list("w3codebox",12.3)) # Asignar nombres a elementos de lista names(list_data) <- c("Sitios", "Números", "Listas") # Mostrar la lista print(list_data)
El resultado de ejecutar el código anterior es:
$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
Los elementos de la lista se pueden acceder mediante índices, si se utiliza names() Después de nombrar la función, también podemos acceder utilizando el nombre correspondiente:
# La lista contiene vectores, matrices y listas list_data <- list(c("Google","w3codebox","Taobao"), nrow =1,2,3,4,5,6), nrow = 2), list("w3codebox",12.3)) # Asignar nombres a elementos de lista names(list_data) <- c("Sitios", "Números", "Listas") # Mostrar la lista print(list_data[1)] # Acceder al tercer elemento de la lista print(list_data[3)] # Acceder al primer elemento de la lista print(list_data$Numbers)
El resultado de ejecutar el código anterior es:
$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
Podemos realizar operaciones de agregar, eliminar y actualizar en la lista, como se muestra en el siguiente ejemplo:
# La lista contiene vectores, matrices y listas list_data <- list(c("Google","w3codebox","Taobao"), nrow =1,2,3,4,5,6), nrow = 2), list("w3codebox",12.3)) # Asignar nombres a elementos de lista names(list_data) <- c("Sitios", "Números", "Listas") # Agregar elemento list_data[4] <- "Nuevo elemento" print(list_data[4)] # Eliminar elemento list_data[4] <- NULL # Al eliminar, el resultado es NULL print(list_data[4)] # Actualizar elemento list_data[3] <- "Reemplazar el tercer elemento" print(list_data[3)]
El resultado de ejecutar el código anterior es:
[[1]] [1] "Nuevo elemento" $<NA> NULL $Lists [1] "Reemplazar el tercer elemento"
Podemos usar la función c() para combinar múltiples listas en una lista:
# Crear dos listas list1 <- list(1,2,3) list2 <- list("Google","w3codebox","Taobao") # Combinar listas merged.list <- c(list1,list2) # Mostrar lista combinada print(merged.list)
El resultado de ejecutar el código anterior es:
[[1]] [1] 1 [[2]] [1] 2 [[3]] [1] 3 [[4]] [1] "Google" [[5]] [1] "w3codebox" [[6]] [1] "Taobao"
Para convertir una lista en un vector se puede usar la función unlist(), que convierte una lista en un vector, lo que nos facilita realizar operaciones aritméticas:
# Crear lista list1 <- list(1:5) print(list1) list2 <-list(10:14) print(list2) # Convertir en vector v1 <- unlist(list1) v2 <- unlist(list2) print(v1) print(v2) # Suma de dos vectores result <- v1+v2 print(result)
El resultado de ejecutar el código anterior es:
[[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