furrr の設定
あなたは公衆衛生のコンサルティング会社で働いています。上司から、平均寿命の分布について、さまざまな分位点を並列で計算するコードを書くよう依頼されました。
ワークスペースには、ベクトルのリスト ls_exp があります。このリストの各要素は、各国の平均寿命の推定値を集めたベクトルです。分位点を計算するための関数 calc_quant() が用意されています。この関数は2つの引数を取り、life_exp は平均寿命のベクトル、quant は計算する分位点を表す固定値です。2番目の引数に渡す値は、ワークスペース内の my_quant に保存されています。
furrr パッケージを使って、ls_exp の各要素に calc_quant() を適用してください。
furrr はあらかじめ読み込まれています。
この演習はコースの一部です
R による並列プログラミング
演習の手順
furrr関数の設定を作成し、グローバル変数としてmy_quantを指定します。future_map()を使い、ls_expの各要素にcalc_quant()をマップします。- エクスポートしたグローバル変数を、
calc_quant()のquant引数に渡します。 - 先ほど作成した設定を、
.options引数に渡します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create a configuration to export global variables
config <- ___(globals = "___")
plan(multisession, workers = 5)
# Specify input list and function to apply
future_map(___, ___,
# Supply exported value to quant argument
quant = ___,
# Specify configuration
.options = ___)
plan(sequential)