Procesamiento de entradas múltiples
Trabajas como Analista de Nóminas para una empresa de subcontratación. Cada mes, recibes los datos de los trabajadores de tu nómina. Te han pedido que escribas un código R paralelo que pueda calcular el pago total por día.
Tienes dos listas en tu espacio de trabajo, ls_hours y ls_rates. Cada uno tiene 30 elementos, uno por cada día del mes. Cada elemento de ls_hours está compuesto por las horas trabajadas por cada trabajador en un día determinado, y cada elemento de ls_rates contiene las tarifas horarias correspondientes. También tienes una función, calc_payout(), que toma dos argumentos, hours y rates.
calc_payout <- function (hours, rates) paste0("$", sum(hours * rates))
Tienes que utilizar la función adecuada del paquete furrr para hacer este cálculo en paralelo. Se ha cargado para ti el paquete furrr.
Este ejercicio forma parte del curso
Programación paralela en R
Instrucciones del ejercicio
- Utiliza la variante
future_map()que toma varias entradas para hacer un bucle. - Combina
ls_hoursyls_rates. - Especifica la función
calc_payout()a la variantefuture_map(). - Vuelve a un plan secuencial.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
plan(multisession, workers = 5)
# Use the correct future_map() variant
___(
# Combine ls_hours and ls_rates
___(___, ___),
# Specify the function to apply
___)
# Revert to sequential plan
___(___)