IniziaInizia gratis

Spesa sanitaria con clusterMap()

In una recente conferenza sulla sanità, è stato affermato che la spesa sanitaria totale è in aumento a livello globale.

Eri presente e vorresti ottenere delle stime rapide per verificare questa affermazione. Hai trovato un insieme di dati che fornisce la spesa sanitaria pro capite e la popolazione dall'anno 2000 in poi. Hai due liste: ls_pop e ls_exp. Contengono, rispettivamente, le dimensioni della popolazione e la spesa sanitaria pro capite per ciascun paese.

La funzione total_exp() accetta due argomenti: pop, ovvero la popolazione, ed exp_pc, la spesa sanitaria pro capite. Questa funzione restituisce la spesa totale in miliardi di dollari statunitensi. Vorresti applicare questa funzione a ls_pop e ls_exp in parallelo. Il pacchetto parallel è già stato caricato.

Questo esercizio fa parte del corso

Programmazione parallela in R

Visualizza il corso

Istruzioni dell'esercizio

  • Applica total_exp() in parallelo a ciascun elemento di ls_pop e ls_exp.
  • Specifica la lista i cui elementi andranno all'argomento pop di total_exp().
  • Allo stesso modo, specifica la lista da fornire all'argomento exp_pc di total_exp().

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

total_exp <- function (pop, exp_pc) {
 sum(pop * exp_pc)/1e9
}

cl <- makeCluster(4)
# Apply total_exp using cl to multiple arguments
ls_total <- ___(___, ___,
                       # Specify first argument
                       pop = ___,
                       # Specify second argument
                       exp_pc = ___)

stopCluster(cl)

print(paste("Average yearly increase in USD billions:", round(mean(diff(unlist(ls_total))))))
Modifica ed esegui il codice