開始使用免費開始

母親平均年齡的自助抽樣(Bootstrapping)

母親年齡(產婦在生產時的年齡)是衡量一個族群新生兒健康的重要指標。過高或過低的母親年齡都可能不利於生產結果。

你在美國衛生部擔任資料分析師。你拿到一個清單 ls_df,裡面有 51 個資料框,分別對應美國 50 州與華盛頓特區。每個資料框都包含欄位 maternal_age。你的主管希望你對每個州進行平均母親年齡的自助抽樣分佈估計。你已經寫好一段迴圈,能對單一資料框執行自助抽樣。接下來需要把這個計算平行化。parallel 套件已為你載入。

本練習屬於課程

R 平行程式設計

檢視課程

練習說明

  • 把自助抽樣的迴圈包成一個會回傳「平均值分佈」的函式。
  • 建立一個包含 4 個核心的叢集。
  • 使用 parLapply() 在平行環境中把自助抽樣函式套用到 ls_df
  • 全部計算完成後,關閉叢集。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Wrap the loop into a function
boot_mean <- ___ (df) ___
  est <- rep(0, 1e3)
  for (i in 1:1e3) {
    b <- sample(df$mother_age, replace = T)
    est[i] <- mean(b)
  }
  return(est)
___
# Make a cluster of four
cl <- ___
# Apply function to ls_df in parallel
state_dist <- ___
# Stop cluster
___(cl)
編輯並執行程式碼