clusterMap()으로 살펴보는 의료 지출
최근 의료 컨퍼런스에서 전 세계적으로 총 의료 지출이 증가하고 있다는 주장이 나왔습니다.
당신은 그 자리에 있었고, 이 주장을 검증하기 위한 대략적인 추정치를 계산해 보고자 합니다. 2000년 이후 연도별 1인당 의료 지출과 인구를 제공하는 데이터셋을 확보했습니다. 국가별로 인구 규모와 1인당 의료 지출을 담은 두 개의 리스트 ls_pop과 ls_exp가 있습니다.
두 개의 인자 pop(인구)과 exp_pc(1인당 의료 지출)를 받는 함수 total_exp()가 제공됩니다. 이 함수는 총 지출액을 미화 단위, 정확히는 십억 달러 단위로 반환합니다. 이 함수를 ls_pop과 ls_exp에 병렬로 적용하려고 합니다. parallel 패키지는 이미 로드되어 있습니다.
이 연습은 강의의 일부입니다
R의 병렬 프로그래밍
연습 안내
total_exp()를ls_pop과ls_exp의 각 원소에 병렬로 적용하세요.total_exp()의pop인자로 전달할 리스트를 지정하세요.- 같은 방식으로
total_exp()의exp_pc인자로 전달할 리스트를 지정하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
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))))))