Нет данных или ноль: как различать пропуски в спортивной статистике
Ноль означает измеренное отсутствие события; пропуск — отсутствие доступного значения. Показываем, почему это меняет средние, доли и выводы по рынку.
Ноль — значение, пропуск — неизвестность
Если статистика сообщает 0 ударов, это утверждение, что в заданном периоде не было ни одного учтённого удара. Если поле пустое, отсутствует или имеет значение null, источник может не передать статистику вовсе, матч может не иметь нужного покрытия или показатель может быть неприменим. Эти состояния нельзя считать взаимозаменяемыми.
В некоторых интерфейсах пустое поле выглядит как ноль, но это визуальная подстановка, а не факт. В спортивных схемах данных встречаются оба подхода: одни контракты явно возвращают null для не сообщённой метрики, другие опускают отсутствующие поля и сохраняют 0 только для реально нулевого события. Поэтому сначала откройте описание схемы именно того источника, из которого взяты цифры.
Чем опасна подмена пропуска нулём
Представьте пять матчей и число ударов команды: 0, 4, 5, 6, 5. Если первый матч действительно закончился без ударов, среднее равно 4. Если по нему нет данных, среднее по четырём известным матчам равно 5; включив пропуск как ноль, вы искусственно занизите среднее до 4. Такой же перекос возникнет в доле матчей с ударом, средних на 90 минут и оценке статистического рынка.
Обратная ошибка тоже опасна: переносить последнее ненулевое значение вперёд, будто оно остаётся текущим. Если обновление не содержит поле, прежняя цифра может быть устаревшей. Держите состояния раздельно: 0 — наблюдаемое значение; missing — данных нет; not_applicable — показатель неприменим; stale — значение относится к прежнему состоянию. Уточните также, неизвестен ли ноль как абсолютное значение или как округлённый/непроверенный счётчик.
Пример для игрока
Карточка игрока показывает «0 отборов» в матче, где он провёл 90 минут и статистика заполнена. Это наблюдение о его действиях по определению выбранного источника. Если игрок не выходил на поле, поле может быть null, отсутствовать или карточка может не существовать; записывать ноль в таблицу сыгравших матчей без правила включения — значит смешать «не участвовал» и «участвовал, но событие не отмечено».
При анализе рынка на индивидуальную статистику фиксируйте минуты, статус участия, метрику, период и покрытие данных. Если сравниваете счётчики событий, уточните, означает ли ноль «событий не было» или «поставщик не получил статистику». Рекомендации по выбору метрик собраны в руководстве по статистике матча; определение отдельных эпизодов, например Big Chances, тоже должно совпадать между рядами.
Что проверить до расчёта среднего
Посмотрите тип поля и допустимые значения; различите пропуск, пустой список и ноль; проверьте матч, период, минуту обновления и участие игрока; посчитайте покрытие по выборке и не заменяйте неизвестное средним автоматически. Если исключаете строки, сообщите, сколько наблюдений осталось и почему. Для ставок это важно не меньше, чем для модели: неполное покрытие может изменить сравнимость линии, но оно не является сигналом в пользу «больше» или «меньше».
Наконец, сохраняйте исходное значение вместе с меткой состояния. Только так можно повторить расчёт после обновления источника и понять, почему итог изменился. Отдельно оценивайте временные утечки и порядок версий данных; следующий материал посвящён хронологии бэктеста.