Метрики тревоги по данным теплицы
Условие
В теплице система наблюдения анализирует показания датчиков и вычисляет балл риска болезни растений. Для части измерений агроном уже указал, была ли болезнь обнаружена фактически.
Строка с числом NA вместо балла означает, что показание датчика пропущено. Такие строки полностью исключаются из расчёта метрик.
Система считает прогноз положительным, если балл риска не меньше 70, и отрицательным в остальных случаях. Если балл риска ровно равен 70, прогноз считается положительным.
Для непроигнорированных строк нужно вычислить precision, recall и F1 для положительного класса, то есть для значения фактической метки 1. Обозначим через TP число верных положительных прогнозов, через FP число ложных положительных прогнозов, через FN число ложных отрицательных прогнозов. Тогда
precision = TP / (TP + FP),
recall = TP / (TP + FN),
F1 = 2 · TP / (2 · TP + FP + FN).
Гарантируется, что существует хотя бы одна строка без пропуска, в которой фактическая метка равна 1, а балл не меньше 70. Поэтому во всех трёх формулах нет деления на ноль. Каждую из трёх метрик нужно округлить до трёх знаков после десятичной точки. Если следующая цифра равна 5, значение округляется в большую сторону.
Формат ввода
В первой строке дано целое число n — количество записей датчиков.
В следующих n строках записаны два значения: фактическая метка болезни fact и балл риска score. Метка fact равна 0 или 1. Вместо балла может быть записано NA.
Формат вывода
Выведите в одной строке три числа через пробел: precision, recall и F1 в этом порядке. У каждого числа должно быть ровно три знака после десятичной точки.
Ограничения
1 ≤ n ≤ 2000.
fact — целое число от 0 до 1.
score — целое число от 0 до 100 включительно или строка NA длины 2.
Гарантируется наличие хотя бы одной строки с fact = 1 и целым score ≥ 70.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- На программиста по олимпиаде: путь по классам — что даёт диплом, куда с ним берут на ИТ-направления и почему решает 9 класс
- Вердикты судьи: WA, TLE, RE, PE, CE — что значит каждый код проверяющей системы и где искать причину