💡 Инструкция: Выберите один ответ из пяти. На 20 вопросов отведено 55 минут. Читайте код построчно, учитывайте типы, атрибуты, пропуски и допущения анализа. После завершения откроются общий процент, 4 тематических шкал и объяснение к каждому заданию.
Вопрос 1 из 20
Ситуация: После загрузки повторного файла один клиент встречается дважды с разными суммами; простое удаление одинаковых строк ничего не меняет. Какой механизм точнее всего объясняет связь кода с ситуацией?
R Фрагмент R Копировать
df <- data.frame(id = c(1, 1, 2), value = c(10, 12, 8))
result <- df[!duplicated(df), ]
result
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа
Дубликат определяется набором полей и бизнес-смыслом, поэтому duplicated() по всей строке не заменяет проверку ключа
arrange() сортирует всю таблицу по указанным выражениям, а desc() задаёт обратный порядок для конкретного ключа
Вопрос 5 из 20
Ситуация: После загрузки повторного файла один клиент встречается дважды с разными суммами; простое удаление одинаковых строк ничего не меняет. Какое заключение лучше всего выдерживает проверку?
R Фрагмент R Копировать
df <- data.frame(id = c(1, 1, 2), value = c(10, 12, 8))
result <- df[!duplicated(df), ]
result
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа; при этом главный риск состоит в том, что удаление полных копий оставляет конфликтующие записи с одинаковым идентификатором, но разными значениями
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю; при этом главный риск состоит в том, что замена всех пропусков одним нулём смешивает отсутствие измерения с реальным нулевым значением и меняет статистику
Дубликат определяется набором полей и бизнес-смыслом, поэтому duplicated() по всей строке не заменяет проверку ключа; при этом главный риск состоит в том, что удаление полных копий оставляет конфликтующие записи с одинаковым идентификатором, но разными значениями
Дубликат определяется набором полей и бизнес-смыслом, поэтому duplicated() по всей строке не заменяет проверку ключа; при этом главный риск состоит в том, что безусловное удаление по правилу IQR может убрать редкие, но реальные значения и занизить хвост распределения
Дубликат определяется набором полей и бизнес-смыслом, поэтому duplicated() по всей строке не заменяет проверку ключа; поэтому достаточно один раз проверить класс объекта на текущем наборе данных
Вопрос 6 из 20
Ситуация: Разные источники обозначают отсутствие данных пустой строкой, числом 999 и настоящим NA. На какое свойство R здесь следует опереться?
R Фрагмент R Копировать
x <- c('12', '', '999', NA, '0')
result <- x %in% c('', '999') | is.na(x)
result
Аргумент na.rm = TRUE удаляет пропуски только внутри конкретного вычисления и не исправляет исходные данные
Дубликат определяется набором полей и бизнес-смыслом, поэтому duplicated() по всей строке не заменяет проверку ключа
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями
Вопрос 7 из 20
Ситуация: Разные источники обозначают отсутствие данных пустой строкой, числом 999 и настоящим NA. Почему успешный запуск ещё не доказывает корректность?
R Фрагмент R Копировать
x <- c('12', '', '999', NA, '0')
result <- x %in% c('', '999') | is.na(x)
result
Безусловное удаление NA может сместить оценку, если пропуски связаны с величиной показателя или группой
Удаление полных копий оставляет конфликтующие записи с одинаковым идентификатором, но разными значениями
Безусловное удаление по правилу IQR может убрать редкие, но реальные значения и занизить хвост распределения
Замена всех пропусков одним нулём смешивает отсутствие измерения с реальным нулевым значением и меняет статистику
Простое условие x >= min & x <= max возвращает NA на пропусках и не ловит согласованные по отдельности, но невозможные пары
Вопрос 10 из 20
Ситуация: Разные источники обозначают отсутствие данных пустой строкой, числом 999 и настоящим NA. Какой вывод точнее всего связывает механизм и главный риск?
R Фрагмент R Копировать
x <- c('12', '', '999', NA, '0')
result <- x %in% c('', '999') | is.na(x)
result
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю; следовательно, совпадение числа строк можно считать полной проверкой решения
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю; при этом главный риск состоит в том, что простое условие x >= min & x <= max возвращает NA на пропусках и не ловит согласованные по отдельности, но невозможные пары
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями; при этом главный риск состоит в том, что замена всех пропусков одним нулём смешивает отсутствие измерения с реальным нулевым значением и меняет статистику
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю; при этом главный риск состоит в том, что замена всех пропусков одним нулём смешивает отсутствие измерения с реальным нулевым значением и меняет статистику
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа; при этом главный риск состоит в том, что безусловное удаление по правилу IQR может убрать редкие, но реальные значения и занизить хвост распределения
Вопрос 11 из 20
Ситуация: Максимальное значение в десять раз выше остальных, но относится к крупнейшему объекту в выборке и может быть реальным. Какое утверждение лучше всего объясняет показанный фрагмент?
R Фрагмент R Копировать
x <- c(10, 11, 12, 13, 80)
q <- quantile(x, c(.25, .75))
result <- x > q[2] + 1.5 * IQR(x)
result
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа
PCA чувствителен к выбросам, пропускам, нелинейности и набору признаков и описывает вариацию, а не причинность
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями
Дубликат определяется набором полей и бизнес-смыслом, поэтому duplicated() по всей строке не заменяет проверку ключа
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю
Вопрос 12 из 20
Ситуация: Максимальное значение в десять раз выше остальных, но относится к крупнейшему объекту в выборке и может быть реальным. Какое скрытое допущение здесь опаснее остальных?
R Фрагмент R Копировать
x <- c(10, 11, 12, 13, 80)
q <- quantile(x, c(.25, .75))
result <- x > q[2] + 1.5 * IQR(x)
result
Удаление полных копий оставляет конфликтующие записи с одинаковым идентификатором, но разными значениями
Безусловное удаление по правилу IQR может убрать редкие, но реальные значения и занизить хвост распределения
Замена всех пропусков одним нулём смешивает отсутствие измерения с реальным нулевым значением и меняет статистику
Один выброс способен повернуть компоненты и создать впечатление отдельного направления данных
Простое условие x >= min & x <= max возвращает NA на пропусках и не ловит согласованные по отдельности, но невозможные пары
Вопрос 15 из 20
Ситуация: Максимальное значение в десять раз выше остальных, но относится к крупнейшему объекту в выборке и может быть реальным. Что стоит написать в технической рецензии к этому фрагменту?
R Фрагмент R Копировать
x <- c(10, 11, 12, 13, 80)
q <- quantile(x, c(.25, .75))
result <- x > q[2] + 1.5 * IQR(x)
result
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа; при этом главный риск состоит в том, что простое условие x >= min & x <= max возвращает NA на пропусках и не ловит согласованные по отдельности, но невозможные пары
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа; поэтому повторный запуск в той же сессии заменяет проверку граничных случаев
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю; при этом главный риск состоит в том, что замена всех пропусков одним нулём смешивает отсутствие измерения с реальным нулевым значением и меняет статистику
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа; при этом главный риск состоит в том, что безусловное удаление по правилу IQR может убрать редкие, но реальные значения и занизить хвост распределения
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями; при этом главный риск состоит в том, что безусловное удаление по правилу IQR может убрать редкие, но реальные значения и занизить хвост распределения
Вопрос 16 из 20
Ситуация: Валидация возраста должна отличать отсутствующее значение от явно невозможного и не скрывать ни один случай. Что является главным техническим основанием для разбора?
R Фрагмент R Копировать
age <- c(25, NA, 140, 18)
result <- age >= 0 & age <= 120
result
Дубликат определяется набором полей и бизнес-смыслом, поэтому duplicated() по всей строке не заменяет проверку ключа
Последовательность select, filter, arrange и mutate должна сохранять ожидаемый ключ, число строк и смысл единиц на каждом шаге
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями
Вопрос 20 из 20
Ситуация: Валидация возраста должна отличать отсутствующее значение от явно невозможного и не скрывать ни один случай. Какое заключение останется верным и на новых данных?
R Фрагмент R Копировать
age <- c(25, NA, 140, 18)
result <- age >= 0 & age <= 120
result
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями; при этом главный риск состоит в том, что простое условие x >= min & x <= max возвращает NA на пропусках и не ловит согласованные по отдельности, но невозможные пары
Выброс — наблюдение, требующее проверки, а не автоматически ошибочная строка; решение зависит от причины и цели анализа; при этом главный риск состоит в том, что безусловное удаление по правилу IQR может убрать редкие, но реальные значения и занизить хвост распределения
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями; при этом главный риск состоит в том, что замена всех пропусков одним нулём смешивает отсутствие измерения с реальным нулевым значением и меняет статистику
Пропуски могут быть явными NA и неявными кодами вроде пустой строки, 999 или «нет данных», которые нужно нормализовать по словарю; при этом главный риск состоит в том, что простое условие x >= min & x <= max возвращает NA на пропусках и не ловит согласованные по отдельности, но невозможные пары
Проверка диапазона должна учитывать единицы, допустимые границы, пропуски и логические связи между несколькими полями; следовательно, предупреждения можно не учитывать, если итог выглядит ожидаемо