Gastos com saúde com clusterMap()
Em uma conferência recente sobre saúde, foi afirmado que o gasto total com saúde está aumentando globalmente.
Você participou e quer obter algumas estimativas para testar essa afirmação. Você encontrou um conjunto de dados que traz o gasto per capita com saúde e a população do ano 2000 em diante. Você tem duas listas: ls_pop e ls_exp. Elas contêm, respectivamente, os tamanhos da população e os gastos per capita com saúde para cada país.
A função total_exp() recebe dois argumentos: pop, de população, e exp_pc, gasto per capita com saúde. Essa função retorna o gasto total em bilhões de dólares americanos. Você quer aplicar essa função a ls_pop e ls_exp em paralelo. O pacote parallel já foi carregado.
Este exercicio faz parte do curso
Programação Paralela em R
Instruções do exercicio
- Aplique
total_exp()em paralelo a cada elemento dels_popels_exp. - Especifique a lista cujos elementos serão fornecidos ao argumento
popdetotal_exp(). - Da mesma forma, especifique a lista a ser fornecida ao argumento
exp_pcdetotal_exp().
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
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))))))