future_map の結果を行結合する
あなたは海外の志願者に米国の大学を推薦する高等教育コンサルティング会社で働いています。研究や被引用数などの指標について、各大学の score 列を含む大学ランキングのデータセットを用意しました。
チームの統計担当者が、あなたのために calc_quants() という関数を作成しました。この関数は、指定した大学のスコアに対する範囲(分位点区間)を計算します。引数は 2 つで、1) score 列を含むデータフレーム、2) 関心のある分位点 q_values です。関心のある分位点は my_q_values という変数として利用できます。
my_q_values <- c(0.025, 0.975)
この関数を各大学のデータに対して並列で適用するよう依頼されています。
furrr と tidyverse は読み込まれています。
この演習はコースの一部です
R による並列プログラミング
演習の手順
- すべてのワーカーで必要となるグローバル変数として
my_q_valuesを指定する設定を作成します。 - データフレーム
uni_dataをuniversity_nameで分割します。 - 各大学のスコアに
calc_quants()を適用し、結果を行方向に結合できる適切なfuture_map()のバリアントを使います。 q_valuesの値と、.options用の設定を指定します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
plan(cluster, workers = 6)
# Create a configuration object to export global variables
config <- ___(___ = ___)
uni_data %>%
# Split the data frame
___(___) %>%
# Specify the future_map variant and the function to map
___(___,
# Specify values for the q_values argument and configuration for .options
q_values = ___,
.options = ___,
.id = "university")
plan(sequential)