R R  ·  30 вопросов  ·  ~85 мин  ·  ⏱ Таймер 25:00  ·  Сложный  · 

Функциональное программирование с purrr

Задания предлагают читать R-код так, как его приходится читать в живом аналитическом проекте. В тесте «Функциональное программирование с purrr» рассматриваются Функции семейства map, Несколько входов, Безопасные функции, Вложенные данные, Проверка допущений и качества и Воспроизводимость и интерпретация. Нужно предсказывать структуру результата, находить скрытые риски, выбирать исправление и доказывать его проверкой. Из 30 вопросов 18 содержат код; остальные описывают ситуации, в которых синтаксически допустимое решение может привести к неверному аналитическому выводу.

Отвечено: 0 из 30
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. На 30 вопросов отведено 85 минут. Читайте код построчно, учитывайте типы, атрибуты, пропуски и допущения анализа. После завершения откроются общий процент, 6 тематических шкал и объяснение к каждому заданию.
Вопрос 1 из 30
Ситуация: Функция должна вернуть по одному среднему на группу, но один обработчик иногда возвращает два числа. Что является главным техническим основанием для разбора?
RФрагмент R
library(purrr)
x <- list(1:3,4:6)
result <- map_dbl(x, mean)
result
Вопрос 2 из 30
Ситуация: Функция должна вернуть по одному среднему на группу, но один обработчик иногда возвращает два числа. Что именно может сломаться при новых данных?
RФрагмент R
library(purrr)
x <- list(1:3,4:6)
result <- map_dbl(x, mean)
result
Вопрос 3 из 30
Ситуация: Функция должна вернуть по одному среднему на группу, но один обработчик иногда возвращает два числа. Какое изменение устраняет именно причину проблемы?
Вопрос 4 из 30
Ситуация: Функция должна вернуть по одному среднему на группу, но один обработчик иногда возвращает два числа. Какой контроль отличит исправление от случайно удачного результата?
Вопрос 5 из 30
Ситуация: Функция должна вернуть по одному среднему на группу, но один обработчик иногда возвращает два числа. Какое заключение останется верным и на новых данных?
RФрагмент R
library(purrr)
x <- list(1:3,4:6)
result <- map_dbl(x, mean)
result
Вопрос 6 из 30
Ситуация: Списки данных и параметров сортируются отдельно, после чего настройки применяются к чужим группам. Какой принцип непосредственно относится к этому коду?
RФрагмент R
library(purrr)
x <- list(1:3,4:6)
trim <- c(0,.2)
result <- map2_dbl(x, trim, ~mean(.x,trim=.y))
result
Вопрос 7 из 30
Ситуация: Списки данных и параметров сортируются отдельно, после чего настройки применяются к чужим группам. Какой риск здесь остаётся главным, даже если результат выглядит правдоподобно?
RФрагмент R
library(purrr)
x <- list(1:3,4:6)
trim <- c(0,.2)
result <- map2_dbl(x, trim, ~mean(.x,trim=.y))
result
Вопрос 8 из 30
Ситуация: Списки данных и параметров сортируются отдельно, после чего настройки применяются к чужим группам. Какая правка делает решение устойчивым, а не просто удобным на текущем примере?
Вопрос 9 из 30
Ситуация: Списки данных и параметров сортируются отдельно, после чего настройки применяются к чужим группам. Что нужно проверить после правки?
Вопрос 10 из 30
Ситуация: Списки данных и параметров сортируются отдельно, после чего настройки применяются к чужим группам. Какой итог разбора не смешивает правило языка с впечатлением от результата?
RФрагмент R
library(purrr)
x <- list(1:3,4:6)
trim <- c(0,.2)
result <- map2_dbl(x, trim, ~mean(.x,trim=.y))
result
Вопрос 11 из 30
Ситуация: Пакетная обработка продолжает работу, но сотни ошибок превращаются в NA без журнала причин. Какое правило нужно применить к этому фрагменту прежде всего?
RФрагмент R
library(purrr)
f <- safely(function(x) log(x, base='bad'))
result <- map(list(1,2), f)
result
Вопрос 12 из 30
Ситуация: Пакетная обработка продолжает работу, но сотни ошибок превращаются в NA без журнала причин. Что в этой ситуации способно исказить вывод без явной синтаксической ошибки?
RФрагмент R
library(purrr)
f <- safely(function(x) log(x, base='bad'))
result <- map(list(1,2), f)
result
Вопрос 13 из 30
Ситуация: Пакетная обработка продолжает работу, но сотни ошибок превращаются в NA без журнала причин. Что следует изменить в коде или процессе?
Вопрос 14 из 30
Ситуация: Пакетная обработка продолжает работу, но сотни ошибок превращаются в NA без журнала причин. Какой тест лучше всего ловит повтор этой ошибки?
Вопрос 15 из 30
Ситуация: Пакетная обработка продолжает работу, но сотни ошибок превращаются в NA без журнала причин. Как сформулировать вывод без лишних обобщений?
RФрагмент R
library(purrr)
f <- safely(function(x) log(x, base='bad'))
result <- map(list(1,2), f)
result
Вопрос 16 из 30
Ситуация: Для каждой группы хранится модель; после раскрытия коэффициентов одна группа создаёт лишние строки и нарушает ключ. Какой механизм точнее всего объясняет связь кода с ситуацией?
RФрагмент R
library(dplyr); library(tidyr); library(purrr)
result <- mtcars |> group_nest(cyl) |> mutate(model=map(data, ~lm(mpg~wt,data=.x)))
result
Вопрос 17 из 30
Ситуация: Для каждой группы хранится модель; после раскрытия коэффициентов одна группа создаёт лишние строки и нарушает ключ. Какой дефект нужно искать в первую очередь?
RФрагмент R
library(dplyr); library(tidyr); library(purrr)
result <- mtcars |> group_nest(cyl) |> mutate(model=map(data, ~lm(mpg~wt,data=.x)))
result
Вопрос 18 из 30
Ситуация: Для каждой группы хранится модель; после раскрытия коэффициентов одна группа создаёт лишние строки и нарушает ключ. Какой вариант исправления сохраняет смысл анализа?
Вопрос 19 из 30
Ситуация: Для каждой группы хранится модель; после раскрытия коэффициентов одна группа создаёт лишние строки и нарушает ключ. Какая проверка относится к исходному риску, а не к внешнему виду результата?
Вопрос 20 из 30
Ситуация: Для каждой группы хранится модель; после раскрытия коэффициентов одна группа создаёт лишние строки и нарушает ключ. Какое заключение лучше всего выдерживает проверку?
RФрагмент R
library(dplyr); library(tidyr); library(purrr)
result <- mtcars |> group_nest(cyl) |> mutate(model=map(data, ~lm(mpg~wt,data=.x)))
result
Вопрос 21 из 30
Ситуация: Порядок элементов изменили, и результаты перестали совпадать с исходными именами из-за числовой индексации. На какое свойство R здесь следует опереться?
RФрагмент R
library(purrr)
x <- list(a=1:3,b=numeric(0),c=4:8)
result <- map(x, ~list(n=length(.x), mean=mean(.x)))
result
Вопрос 22 из 30
Ситуация: Порядок элементов изменили, и результаты перестали совпадать с исходными именами из-за числовой индексации. Почему успешный запуск ещё не доказывает корректность?
RФрагмент R
library(purrr)
x <- list(a=1:3,b=numeric(0),c=4:8)
result <- map(x, ~list(n=length(.x), mean=mean(.x)))
result
Вопрос 23 из 30
Ситуация: Порядок элементов изменили, и результаты перестали совпадать с исходными именами из-за числовой индексации. Какая правка лучше локальной заплатки?
Вопрос 24 из 30
Ситуация: Порядок элементов изменили, и результаты перестали совпадать с исходными именами из-за числовой индексации. Как подтвердить корректность на граничном случае?
Вопрос 25 из 30
Ситуация: Порядок элементов изменили, и результаты перестали совпадать с исходными именами из-за числовой индексации. Какой вывод точнее всего связывает механизм и главный риск?
RФрагмент R
library(purrr)
x <- list(a=1:3,b=numeric(0),c=4:8)
result <- map(x, ~list(n=length(.x), mean=mean(.x)))
result
Вопрос 26 из 30
Ситуация: После распараллеливания симуляции те же группы получают другие случайные последовательности. Какое утверждение лучше всего объясняет показанный фрагмент?
RФрагмент R
library(purrr)
set.seed(13)
x <- set_names(1:3,c('a','b','c'))
result <- map(x, ~rnorm(2,mean=.x))
result
Вопрос 27 из 30
Ситуация: После распараллеливания симуляции те же группы получают другие случайные последовательности. Какое скрытое допущение здесь опаснее остальных?
RФрагмент R
library(purrr)
set.seed(13)
x <- set_names(1:3,c('a','b','c'))
result <- map(x, ~rnorm(2,mean=.x))
result
Вопрос 28 из 30
Ситуация: После распараллеливания симуляции те же группы получают другие случайные последовательности. Что нужно сделать, чтобы ошибка не вернулась на следующем наборе данных?
Вопрос 29 из 30
Ситуация: После распараллеливания симуляции те же группы получают другие случайные последовательности. Какая проверка непосредственно подтверждает, что дефект устранён?
Вопрос 30 из 30
Ситуация: После распараллеливания симуляции те же группы получают другие случайные последовательности. Что стоит написать в технической рецензии к этому фрагменту?
RФрагмент R
library(purrr)
set.seed(13)
x <- set_names(1:3,c('a','b','c'))
result <- map(x, ~rnorm(2,mean=.x))
result

Ответьте на все 30 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу