始める無料で始める

ブートストラップのチャンク分割

大学同士の研究開発における連携状況を調査しています。ワークスペースには 100 個のデータフレームからなるリスト ls_edu があります。各データフレームには、各国の大学の連携スコアが入っています。

また、1 つのデータフレームに対して連携スコアの分位点を計算する関数 rating_quants() も用意されています。

この計算には 5 コアを利用できます。future_map_dfr() を使って ls_edurating_quants() を適用しようとしましたが、RAM が不足して R セッションがクラッシュしました。そこで、チャンクサイズを 35 に設定し、同時に実行されるブートストラップが 3 つを超えないようにすることにしました。furrr パッケージは読み込まれています。

この演習はコースの一部です

R による並列プログラミング

コースを見る

演習の手順

  • ワーカー数 5 の multisession を計画します。
  • future_map_dfr() 用の設定を作成し、チャンクサイズを 35 に指定します。
  • 作成した設定を future_map_dfr() の適切な引数に渡します。
  • 計画を sequential に戻します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Plan a multisession of five workers
___

# Make a configuration specifying chunk size
config <- ___
future_map_dfr(ls_edu, rating_quants,
# Supply the configuration to the correct argument
               ___ = ___,
               .id = "country")

# Revert to sequential plan
___
コードを編集して実行