開始使用免費開始

可重現的樂透結果

你在一家線上樂透公司擔任工程師。依照法律規定,中獎者必須隨機選出,且過程要具備透明度。

在你的工作環境中有一個樂透彩券清單 ls_tickets。它包含 51 個元素,每個元素對應一個美國州別。清單中的每個元素都包含該州的樂透號碼。在你的工作環境中也有一個函式 lottery(),會為每個州隨機選出中獎號碼。你正使用 future_map()lottery() 平行套用到 ls_tickets 進行測試。問題是,每次執行這段程式碼時,中獎結果都不一樣。已為你載入 furrr 套件。

本練習屬於課程

R 平行程式設計

檢視課程

練習說明

  • 建立一個用於 future_map() 的設定。
  • 在此設定中將種子(seed)設為 4321
  • 將這個設定提供給 future_map()

動手互動練習

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

lottery <- function(tickets) {
  sample(tickets, 1)
}

# Create a configuration for future_map()
config <- ___(
# Provide the seed 4321 to the correct argument   
  ___ = ___)

plan(multisession, workers = 4)
winners <- future_map(ls_tickets, lottery,
                      # Supply configuration to future_map()
                      ___ = ___)

plan(sequential)
編輯並執行程式碼