Simulare dati con input multipli usando map2()
La funzione map() è ottima se devi iterare su una sola lista; tuttavia, spesso avrai bisogno di iterare su due liste contemporaneamente. Qui entra in gioco map2(). Mentre map() prende la lista come argomento .x, map2() prende due liste come due argomenti: .x e .y.
Per provare map2(), creerai un semplice insieme di dati, con una lista di numeri e una lista di stringhe. Metterai insieme queste due liste per creare dei dati simulati.
Questo esercizio fa parte del corso
Le basi della programmazione funzionale con purrr
Istruzioni dell'esercizio
- Crea una lista
meanscontenente i valori da 1 a 3, ciascuno come elemento separato. - Crea una lista
sitescon "north", "west" ed "east". - Usa
map2()sulle listesitesemeansper creare un data frame con due colonne.- La prima colonna è
sites; la seconda colonna è generata darnorm()conmeanpreso dalla listameans.
- La prima colonna è
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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