<- list(mtcars, 1:10, letters) lista_1
7 Listas
Status 🟨🟨🟨
7.1 Introdução
Listas são objetos que armazenam outros objetos, podendo ser de variados tipos.
7.2 Criando Listas
Abaixo um exemplo de criação de lista através da função list
. Os seus componentes serão um data frame, um vetor de números de 1 até 10 e um vetor com as letras do alfabeto.
7.3 Acessando Componentes
Para acessar os elementos das listas pode-se usar o operador [[…]]
.
class(lista_1[[1]])
[1] "data.frame"
Deve-se tomar cuidado ao usar o operador []
, pois este operador é genérico e não retorna o componente 1 da lista em sua “forma” original e sim de uma lista contendo o objeto da lista original. Desta forma, não é possível fazer extração de objetos do vetor retornado.
class(lista_1[1])
[1] "list"
2][5] lista_1[
[[1]]
NULL
Usando [[...]]
o objeto retornado mantém sua forma original e a extração ocorre normalmente.
class(lista_1[[2]])
[1] "integer"
2]][5] lista_1[[
[1] 5
7.4 Nomeando Componentes
Os componentes das listas podem ser nomeados com a função names
.
names(lista_1) <- c('df_mtcars', 'vetor', 'letras')
$letras lista_1
[1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s"
[20] "t" "u" "v" "w" "x" "y" "z"
identical(lista_1$letras, lista_1[[3]])
[1] TRUE
identical(lista_1$letras, lista_1[['letras']])
[1] TRUE
7.4.1 Nomes Abreviados
Para acessar componentes de listas nomeadas é possível informar seus nomes de forma abreviada.
$le lista_1
[1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s"
[20] "t" "u" "v" "w" "x" "y" "z"
#equivalente a
$letras lista_1
[1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s"
[20] "t" "u" "v" "w" "x" "y" "z"
Veja que a abreviação deve identificar de forma exclusiva os componentes, caso contrário o valor retornado é NULL
. A lista_3 possui dois componentes que começam com ‘le’ e assim não é possível fazer a seleção.
<- list(letras = letters[1:10], letras_maiusculas = LETTERS[1:10])
lista_3
$le lista_3
NULL
R Core Team (2023)
Última atualização: 11/10/2024 - 21:51:19