母親の平均年齢をブートストラップする
母親の年齢(出産時の母親の年齢)は、集団の周産期・出生に関する健康を示す重要な指標です。母親の年齢が高すぎても低すぎても、出産の転帰に悪影響を及ぼす可能性があります。
あなたは米国保健省でデータアナリストとして働いています。あなたには、米国の各州とワシントンD.C.を合わせた 51 個のデータフレームからなるリスト ls_df が渡されます。各データフレームには 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)