Fazer um loop sobre uma lista
Fazer loop em uma lista é tão fácil e conveniente quanto fazer loop em um vetor. Novamente, há duas abordagens diferentes aqui:
primes_list <- list(2, 3, 5, 7, 11, 13)
# loop version 1
for (p in primes_list) {
print(p)
}
# loop version 2
for (i in 1:length(primes_list)) {
print(primes_list[[i]])
}
Observe que você precisa de colchetes duplos ([[ ]]
) para selecionar os elementos da lista na versão 2 do loop.
Suponha que você tenha uma lista com todos os tipos de informações sobre a cidade de Nova York: o tamanho da população, os nomes dos bairros e se ela é a capital dos Estados Unidos. Já definimos uma lista nyc
que contém essas informações (fonte: Wikipedia).
Este exercício faz parte do curso
R intermediário
Instruções de exercício
Como no exercício anterior, faça um loop na lista nyc
de duas maneiras diferentes para imprimir seus elementos:
- Faça um loop diretamente sobre a lista
nyc
(versão 1 do loop). - Defina um índice de loop e faça o subconjunto usando colchetes duplos (versão 2 do loop).
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# The nyc list is already specified
nyc <- list(pop = 8405837,
boroughs = c("Manhattan", "Bronx", "Brooklyn", "Queens", "Staten Island"),
capital = FALSE)
# Loop version 1
# Loop version 2