Kom igångKom igång gratis

Finansiera samhällsvetenskap med futures

Du arbetar för en filantropisk stiftelse. Stiftelsen delar ut forskningsanslag till universitet vars samhällsvetenskapliga forskningsbetyg tillhör de översta en procenten i sitt land. Därför beräknas ett gränsvärde för forskningsbetyget varje år.

Du har en lista, rating_list, i din arbetsmiljö. Varje element innehåller forskningsbetyg för universitet i ett land. Du har även tillgång till generate_cutoff_future(). Den här funktionen skapar en future för beräkningen av gränsvärdet. Din chef är dock inte helt övertygad om fördelarna med futures jämfört med andra paralleliseringsmetoder. Du behöver visa att futures möjliggör både sekventiell och parallell körning utan att ändra själva koden. Paketet future har redan laddats åt dig.

Den här övningen är en del av kursen

Parallell programmering i R

Visa kurs

Övningsinstruktioner

  • Generera sekventiella futures genom att applicera generate_cutoff_future()rating_list med lapply() under en sekventiell plan.
  • Extrahera värdena från de sekventiella futures.
  • Generera parallella futures under en parallell plan.
  • Extrahera värdena från de parallella futures.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

plan(sequential)
# Create futures under sequential plan
seq_futures <- ___(___, ___)
# Extract values of sequential futures
seq_values <- ___(___)

plan(multisession, workers = 4)
# Create futures under multisession plan
par_futures <- ___(___, ___)
# Extract values of parallel futures
par_values <- ___(___)
               
plan(sequential)

cbind(seq_values, par_values)
Redigera och kör kod