Loop over een lijst
Over een lijst loopen is net zo makkelijk en handig als over een vector. Ook hier zijn er twee verschillende aanpakken:
primes_list <- list(2, 3, 5, 7, 11, 13)
# loopversie 1
for (p in primes_list) {
print(p)
}
# loopversie 2
for (i in 1:length(primes_list)) {
print(primes_list[[i]])
}
Let op: je hebt dubbele rechte haken — [[ ]] — nodig om de elementen van de lijst te selecteren in loopversie 2.
Stel, je hebt een lijst met allerlei informatie over New York City: de bevolkingsomvang, de namen van de boroughs, en of het de hoofdstad van de Verenigde Staten is. We hebben al een lijst nyc gedefinieerd met deze informatie (bron: Wikipedia).
Deze oefening maakt deel uit van de cursus
R voor gevorderden
Oefeninstructies
Loop, net als in de vorige oefening, op twee verschillende manieren over de nyc-lijst om de elementen te printen:
- Loop direct over de
nyc-lijst (loopversie 1). - Definieer een loopindex en doe subsetting met dubbele haken (loopversie 2).
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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