Simularea datelor cu mai multe intrări folosind map2()
Funcția map() este excelentă atunci când trebuie să iterezi peste o singură listă, însă de multe ori vei avea nevoie să iterezi peste două liste în același timp. Aici intervine map2(). În timp ce map() primește lista ca argument .x, map2() primește două liste ca două argumente separate: .x și .y.
Pentru a testa map2(), vei crea un set de date simplu, cu o listă de numere și o listă de șiruri de caractere. Vei combina aceste două liste și vei genera niște date simulate.
Acest exercițiu face parte din cursul
Bazele programării funcționale cu purrr
Instrucțiuni pentru exercițiu
- Creează o listă
meanscare conține valorile de la 1 la 3, fiecare ca element separat. - Creează o listă
sitescu valorile "north", "west" și "east". - Aplică
map2()peste listelesitesșimeanspentru a crea un data frame cu două coloane.- Prima coloană conține
sites; a doua coloană este generată curnorm(), folosindmeandin listameans.
- Prima coloană conține
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# List of 1, 2 and 3
means <- list(___)
# Create sites list
sites <- list(___)
# Map over two arguments: sites and means
list_of_files_map2 <- map2(___, ___, ~___(sites = ___,
a = rnorm(mean = ___, n = 200, sd = (5/2))))
list_of_files_map2