IniziaInizia gratis

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

Visualizza il corso

Istruzioni dell'esercizio

  • Crea una lista means contenente i valori da 1 a 3, ciascuno come elemento separato.
  • Crea una lista sites con "north", "west" ed "east".
  • Usa map2() sulle liste sites e means per creare un data frame con due colonne.
    • La prima colonna è sites; la seconda colonna è generata da rnorm() con mean preso dalla lista means.

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
Modifica ed esegui il codice