Задание 27 · ЕГЭ, информатика 2027

Анализ данных

Сбор, очистка, модель, прогноз — и новая форма ответа.

Задание 27Максимум 2 баллаУровень: высокийПримерно 36 минут Нужна среда программирования
Форма ответа изменена в 2027 году.Изменилась форма ответа: теперь это строка из двух чисел, а не две строки по два числа. Ответы, оформленные по образцу прошлых лет, не засчитываются.

Пять вариантов задания

Данные в вариантах разные, приём решения один. Отмеченные галочкой уже решены — отметка хранится в этом браузере.

Даны два файла. В файле A — результаты измерений: по одной записи в строке, поля разделены точкой с запятой — номер измерения и значение. Часть записей испорчена: в них отсутствует одно из полей или вместо числа стоит текст. В файле B — номера измерений, для которых нужен прогноз, по одному в строке.

Выполните полный цикл работы с данными:
1) отбросьте испорченные записи файла A и сосчитайте их количество;
2) по оставшимся записям постройте линейную модель y = k·x + b методом наименьших квадратов;
3) вычислите по этой модели прогноз для последнего номера из файла B и округлите его до целого по правилам математики (0,5 — вверх).

Формат ответа (изменён в 2027 году): ответ — одна строка из двух чисел, разделённых пробелом: сначала количество отброшенных записей, затем округлённый прогноз.
Скачать 27-A-1.txt Скачать 27-B-1.txtСохраните файл рядом с программой. В листинге разбора он открывается под экзаменационным именем 27-A.txt и 27-B.txt — переименуйте или поправьте строку с open(...).

Анализ данных: полный цикл

Номер 27 в 2027 году стал заданием на работу с данными целиком: сбор, очистка, оценка качества, выбор модели, преобразование, визуализация и интерпретация результата.

Очистка. Запись считается испорченной, если полей не столько, сколько нужно, или если поле не преобразуется в число. Оба случая ловятся одинаково: проверить количество полей, затем попробовать преобразовать и перехватить ошибку через try / except ValueError. «На глаз» брак не отсекают — пустое поле и слово «н/д» выглядят по-разному, а по сути одинаковы.

Оценка качества. Полезно сразу посчитать долю брака: если испорчена половина данных, модель строить нельзя, и об этом надо сказать.

Линейная модель методом наименьших квадратов:

k = (n·Σxy − Σx·Σy) / (n·Σx² − (Σx)²), b = (Σy − k·Σx) / n.

Форма ответа изменена в 2027 году: это одна строка из двух чисел, а не две строки. Ответ в старом формате не засчитывается.

Про округление. Функция round() в Python округляет 0,5 к чётному. Если в задании сказано «0,5 — вверх», пишите math.floor(x + 0.5).

Где эта тема разобрана подробно

Структура раздела и темы заданий соответствуют кодификатору и спецификации ФИПИ. Задания и файлы данных составлены редакцией reknow.ru. План варианта приведён по проекту спецификации и демоверсии ФИПИ 2027 года. После публикации утверждённой версии информация будет обновлена.