Simular datos con múltiples entradas usando map2()
La función map() es estupenda si necesitas iterar sobre una sola lista, pero a menudo tendrás que iterar sobre dos listas a la vez. Ahí es donde entra map2(). Mientras que map() recibe la lista en el argumento .x, map2() recibe dos listas como dos argumentos: .x y .y.
Para probar map2(), vas a crear un conjunto de datos sencillo, con una lista de números y una lista de cadenas. Juntarás estas dos listas y crearás algunos datos simulados.
Este ejercicio forma parte del curso
Fundamentos de la programación funcional con purrr
Instrucciones del ejercicio
- Crea una lista
meansque contenga los valores del 1 al 3, cada uno como un elemento separado. - Crea una lista
sitescon "north", "west" y "east". - Aplica
map2()sobre las listassitesymeanspara crear un data frame con dos columnas.- La primera columna es
sites; la segunda columna se genera conrnorm()usandomeande la listameans.
- La primera columna es
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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