Tutoriál R/Seznamy
Z WikiSkript
Seznam (list) je výčtem prvků, které mohou být různorodého datového typu, včetně listu. Vyzkoušejte:
my_list <- list("a" = c(1:10), "b" = mtcars, "c" = matrix(1:8, 2), "z" = "ahoj")
str(my_list)
class(my_list) # "list"
is.list(my_list) # TRUE
Vytvoření seznamu z vektoru, matice a datové tabulky
vektor <- 1:12
matice <- matrix(1:12, ncol = 3)
tabulka <- mtcars[1:12, ] # prvních 12 řádků z vestavěné tabulky mtcars
seznam <- list(vektor, matice, tabulka)
seznam
# Pojmenování položek seznamu
names(seznam) <- c("vek", "mat", "tab")
seznam
# Pojmenovat položky jde i přímo v definici seznamu
seznam <- list(vek=vektor, mat=matice, tab=tabulka)
Výběr dat ze seznamu obsahujícího informace o filmu "Tenkrát na západě"
nazev_char <- "Tenkrát na západě"
herci_vect <- c("Henry Fonda", "Claudia Cardinale", "Jason Robards", "Charles Bronson")
scenar_vect <- c("Sergio Leone", "Sergio Donati")
# Vytvoření seznamu
west <- list(nazev = nazev_char, herci = herci_vect, scenar = scenar_vect)
# Výběr vektoru herců - je možné více způsoby
west[[2]]
west[["herci"]]
west$herci
# Výběr druhého herce v pořadí ve vektoru herců
west[[2]][2]
west[["herci"]][2]
west$herci[2]
Přidání dat do seznamu
# Přidání režiséra a roku a do seznamu ''west''
west_updated <- c(west, rok = 1968, rezie = "Sergio Leone")
# Struktura aktualizovaného seznamu
str(west_updated)