💡 Инструкция: Выберите один ответ из пяти. На 25 вопросов отведено 70 минут. Читайте код построчно, учитывайте типы, атрибуты, пропуски и допущения анализа. После завершения откроются общий процент, 5 тематических шкал и объяснение к каждому заданию.
Вопрос 1 из 25
Ситуация: Месяцы хранятся отдельными колонками; после преобразования идентификатор клиента неожиданно оказался среди показателей. Какое утверждение лучше всего объясняет показанный фрагмент?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=1:2, jan=c(10,20), feb=c(11,21))
result <- df |> pivot_longer(jan:feb, names_to='month', values_to='value')
result
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени
Вопрос 2 из 25
Ситуация: Месяцы хранятся отдельными колонками; после преобразования идентификатор клиента неожиданно оказался среди показателей. Какое скрытое допущение здесь опаснее остальных?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=1:2, jan=c(10,20), feb=c(11,21))
result <- df |> pivot_longer(jan:feb, names_to='month', values_to='value')
result
Простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
Склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
Дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
Таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
Вопрос 5 из 25
Ситуация: Месяцы хранятся отдельными колонками; после преобразования идентификатор клиента неожиданно оказался среди показателей. Что стоит написать в технической рецензии к этому фрагменту?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=1:2, jan=c(10,20), feb=c(11,21))
result <- df |> pivot_longer(jan:feb, names_to='month', values_to='value')
result
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы; поэтому повторный запуск в той же сессии заменяет проверку граничных случаев
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов; при этом главный риск состоит в том, что таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы; при этом главный риск состоит в том, что дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени; при этом главный риск состоит в том, что случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы; при этом главный риск состоит в том, что случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
Вопрос 6 из 25
Ситуация: В длинной таблице один показатель пришёл дважды для того же объекта, а широкая форма должна содержать одно число. Что является главным техническим основанием для разбора?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=c(1,1,1), metric=c('x','x','y'), value=c(10,12,5))
result <- df |> pivot_wider(names_from=metric, values_from=value)
result
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов
Вопрос 7 из 25
Ситуация: В длинной таблице один показатель пришёл дважды для того же объекта, а широкая форма должна содержать одно число. Что именно может сломаться при новых данных?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=c(1,1,1), metric=c('x','x','y'), value=c(10,12,5))
result <- df |> pivot_wider(names_from=metric, values_from=value)
result
Таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
Дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
Случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
Склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
Вопрос 10 из 25
Ситуация: В длинной таблице один показатель пришёл дважды для того же объекта, а широкая форма должна содержать одно число. Какое заключение останется верным и на новых данных?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=c(1,1,1), metric=c('x','x','y'), value=c(10,12,5))
result <- df |> pivot_wider(names_from=metric, values_from=value)
result
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени; при этом главный риск состоит в том, что дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов; при этом главный риск состоит в том, что таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы; при этом главный риск состоит в том, что дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени; следовательно, предупреждения можно не учитывать, если итог выглядит ожидаемо
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени; при этом главный риск состоит в том, что случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
Вопрос 11 из 25
Ситуация: Составной код обычно содержит три части, но в исторических данных встречаются пропущенный регион и дополнительный дефис. Какой принцип непосредственно относится к этому коду?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(code=c('RU-77-001','EE-37-002'))
result <- df |> separate_wider_delim(code, delim='-', names=c('country','region','id'))
result
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов
Вопрос 12 из 25
Ситуация: Составной код обычно содержит три части, но в исторических данных встречаются пропущенный регион и дополнительный дефис. Какой риск здесь остаётся главным, даже если результат выглядит правдоподобно?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(code=c('RU-77-001','EE-37-002'))
result <- df |> separate_wider_delim(code, delim='-', names=c('country','region','id'))
result
Склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
Простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
Случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
Дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
Вопрос 15 из 25
Ситуация: Составной код обычно содержит три части, но в исторических данных встречаются пропущенный регион и дополнительный дефис. Какой итог разбора не смешивает правило языка с впечатлением от результата?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(code=c('RU-77-001','EE-37-002'))
result <- df |> separate_wider_delim(code, delim='-', names=c('country','region','id'))
result
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов; поэтому внешний вид напечатанного объекта важнее происхождения и структуры данных
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов; при этом главный риск состоит в том, что простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов; при этом главный риск состоит в том, что простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены; при этом главный риск состоит в том, что склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов; при этом главный риск состоит в том, что таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
Вопрос 16 из 25
Ситуация: Ключ собирают из двух полей, однако одно из них может отсутствовать, а двоеточие иногда встречается в исходном тексте. Какое правило нужно применить к этому фрагменту прежде всего?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(a=c('x',NA), b=c('y','z'))
result <- df |> unite('key', a, b, sep=':', na.rm=TRUE)
result
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов
Вопрос 17 из 25
Ситуация: Ключ собирают из двух полей, однако одно из них может отсутствовать, а двоеточие иногда встречается в исходном тексте. Что в этой ситуации способно исказить вывод без явной синтаксической ошибки?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(a=c('x',NA), b=c('y','z'))
result <- df |> unite('key', a, b, sep=':', na.rm=TRUE)
result
Склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
Дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
Простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
Случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
Вопрос 20 из 25
Ситуация: Ключ собирают из двух полей, однако одно из них может отсутствовать, а двоеточие иногда встречается в исходном тексте. Как сформулировать вывод без лишних обобщений?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(a=c('x',NA), b=c('y','z'))
result <- df |> unite('key', a, b, sep=':', na.rm=TRUE)
result
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов; при этом главный риск состоит в том, что простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены; при этом главный риск состоит в том, что склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены; при этом главный риск состоит в том, что таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены; поэтому отсутствие сообщения об ошибке уже подтверждает корректность результата
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов; при этом главный риск состоит в том, что склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Вопрос 21 из 25
Ситуация: После изменения формы число объектов совпало с ожиданием, но одна ячейка стала списком из двух чисел. Какой механизм точнее всего объясняет связь кода с ситуацией?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=c(1,1), month=c('jan','jan'), value=c(10,12))
result <- df |> pivot_wider(names_from=month, values_from=value)
result
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов
Разделение составной строки должно учитывать число частей, экранирование разделителя и правила для лишних либо недостающих фрагментов
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы
pivot_wider() создаёт столбцы из значений names_from и требует однозначного значения для каждой комбинации идентификаторов и нового имени
Вопрос 22 из 25
Ситуация: После изменения формы число объектов совпало с ожиданием, но одна ячейка стала списком из двух чисел. Какой дефект нужно искать в первую очередь?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=c(1,1), month=c('jan','jan'), value=c(10,12))
result <- df |> pivot_wider(names_from=month, values_from=value)
result
Дубликаты комбинации превращают ячейки в списки или требуют values_fn, а случайная агрегация может скрыть конфликт данных
Склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
Простое деление по дефису ломает значения, где тот же символ встречается внутри имени или отсутствует
Таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
Вопрос 25 из 25
Ситуация: После изменения формы число объектов совпало с ожиданием, но одна ячейка стала списком из двух чисел. Какое заключение лучше всего выдерживает проверку?
R Фрагмент R Копировать
library(tidyr)
df <- tibble::tibble(id=c(1,1), month=c('jan','jan'), value=c(10,12))
result <- df |> pivot_wider(names_from=month, values_from=value)
result
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов; при этом главный риск состоит в том, что таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов; поэтому достаточно один раз проверить класс объекта на текущем наборе данных
unite() соединяет несколько столбцов в один, а параметр na.rm определяет, будут ли пропуски включены как текст или отброшены; при этом главный риск состоит в том, что склейка без продуманного экранирования делает преобразование необратимым, если разделитель уже встречается в данных
Изменение формы должно сохранять смысл наблюдения и измерения, а также позволять объяснить, почему изменилось число строк и столбцов; при этом главный риск состоит в том, что случайный захват идентификатора в cols разрушает ключ и смешивает его со значениями показателей
pivot_longer() превращает выбранные столбцы в пары имя-значение, увеличивая число строк и сохраняя остальные столбцы как идентификаторы; при этом главный риск состоит в том, что таблица может выглядеть аккуратно после pivot, но потерять уникальность ключа или создать неявные пропуски