Aan de slagGa gratis aan de slag

Resultaten van future_map per rij binden

Je werkt bij een adviesbureau voor hoger onderwijs dat Amerikaanse universiteiten aanbeveelt aan internationale aanvragers. Je hebt een gegevensset met universiteitsranglijsten verzameld met een kolom score voor onderzoek, citaties, enz., voor verschillende universiteiten.

De teamstatisticus heeft een functie, calc_quants(), voor je geschreven. Deze functie berekent een bereik voor de scores van een gegeven universiteit. Ze neemt twee argumenten: 1) een data frame met de kolom score, en 2) de relevante kwantielwaarden q_values. De gewenste kwantielen zijn beschikbaar als de variabele my_q_values.

my_q_values <- c(0.025, 0.975)

Je wordt gevraagd deze functie parallel toe te passen op de gegevens voor elke universiteit.

furrr en tidyverse zijn al voor je geladen.

Deze oefening maakt deel uit van de cursus

Parallel programmeren in R

Cursus bekijken

Oefeninstructies

  • Maak een configuratie die my_q_values als globale variabele specificeert voor alle workers.
  • Splits het data frame uni_data op university_name.
  • Pas calc_quants() toe op de scores van elke universiteit met de juiste variant van future_map() om resultaten per rij te binden.
  • Geef de waarden op voor q_values en de configuratie voor .options.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

plan(cluster, workers = 6)

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

uni_data %>%
  # Split the data frame
  ___(___) %>% 
  # Specify the future_map variant and the function to map
  ___(___,
  # Specify values for the q_values argument and configuration for .options
                 q_values = ___,
                 .options = ___,
                 .id = "university")
plan(sequential)
Code bewerken en uitvoeren