Воспроизводимые результаты лотереи
Вы работаете программистом в онлайн-лотерее. По закону победители должны выбираться случайным образом, а сам процесс отбора должен быть прозрачным.
В вашем рабочем пространстве есть список лотерейных билетов ls_tickets. Он содержит 51 элемент — по одному на каждый штат США. Каждый элемент списка включает номера лотерейных билетов. Также у вас есть функция lottery(), которая случайным образом определяет победный билет для каждого штата. Вы тестируете функцию lottery(), применяя её к ls_tickets в параллельном режиме с помощью future_map(). Проблема в том, что победители получаются разными при каждом запуске кода. Пакет furrr уже загружен.
Это упражнение является частью курса
Параллельное программирование на R
Инструкции к упражнению
- Создайте конфигурацию для
future_map(). - Задайте зерно генератора равным
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)