Aan de slagGa gratis aan de slag

De furrr-configuratie

Je werkt bij een adviesbureau voor volksgezondheid. Je baas wil dat je parallelle code schrijft om verschillende kwantielen van de levensverwachtingsverdeling te berekenen.

In je werkruimte staat ls_exp, een lijst met vectoren. Elk element van deze lijst is een vector met schattingen van de levensverwachting voor elk land. De functie calc_quant() om kwantielen te berekenen is voor je beschikbaar. Deze functie neemt twee argumenten: life_exp, de vector met levensverwachting, en quant, een vaste waarde voor het te berekenen kwantiel. De waarde voor het tweede argument staat als my_quant in je werkruimte.

Je moet calc_quant() toepassen op elk element van ls_exp met het furrr-pakket.

furrr is al voor je geladen.

Deze oefening maakt deel uit van de cursus

Parallel programmeren in R

Cursus bekijken

Oefeninstructies

  • Maak een configuratie voor furrr-functies om my_quant als globale variabele te specificeren.
  • Map in de aanroep van future_map() calc_quant() op elk element van ls_exp.
  • Geef de geëxporteerde globale variabele door aan het quant-argument van calc_quant().
  • Geef de eerder gemaakte configuratie door aan het .options-argument.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Create a configuration to export global variables
config <- ___(globals = "___")

plan(multisession, workers = 5)

# Specify input list and function to apply
future_map(___, ___,
# Supply exported value to quant argument
           quant = ___,
# Specify configuration
           .options = ___)

plan(sequential)
Code bewerken en uitvoeren