Loopa över en lista
Att loopa över en lista är lika enkelt och smidigt som att loopa över en vektor. Även här finns det två olika tillvägagångssätt:
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]])
}
Observera att du behöver dubbla hakparenteser – [[ ]] – för att välja ut listelementet i loop version 2.
Antag att du har en lista med olika typer av information om New York City: befolkningsstorlek, namnen på stadsdelarna och om staden är USA:s huvudstad. Vi har redan definierat en lista nyc som innehåller den här informationen (källa: Wikipedia).
Den här övningen är en del av kursen
R för medelnivå
Övningsinstruktioner
Precis som i föregående övning loopar du över listan nyc på två olika sätt för att skriva ut dess element:
- Loopa direkt över listan
nyc(loop version 1). - Definiera ett loopindex och välj ut element med dubbla hakparenteser (loop version 2).
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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