Что если задать BI-системе вопрос, который выходит за рамки рутинной аналитики? Будет ли она также эффективна? Эта идея родилась из корпоративного шуточного спора: шутили над качествами сотрудника «Рака», а в статистику попали также и другие «носители» знака зодиака. 

Мы в Modus решили проверить закономерности на данных, так как это наш профессиональный рабочий инструмент и сфера интереса. Взяли статистику всех игроков Российской Премьер-Лиги, добавили знаки зодиака — и посмотрели, что получится. 

Спойлер: вышел настоящий дашборд и серьезный вывод о том, на что способен гибкий BI.

Зачем вообще это делать?

Можно просто визуализировать данные, а можно складывать из них историю — с гипотезой, проверкой и логичным финалом. В корпоративной среде это называется Data Storytelling.

Поэтому мы решили проверить главное обещание любого современного BI: «инструмент должен отвечать на любые вопросы — даже те, к которым его никто не готовил». Самый честный способ это проверить — взять заведомо нестандартный датасет и задать ему странные вопросы. Например: правда ли, что Скорпионы агрессивнее Дев? 

Дальше все устроено стандартно для аналитического проекта: получить данные → почистить → собрать модель → построить визуализации → проверить гипотезы → сделать выводы.

Откуда брали данные и как с ними работали

Источники

Всю фактуру мы взяли с официального сайта РПЛ. Нас интересовали две таблицы:

  • Список игроков — premierliga.ru/players/ — ФИО, дата рождения, клуб, позиция, сезон.

  • Статистика игроков — premierliga.ru/statistics/ — голы, пасы, карточки, пенальти, удары и десятки других показателей.

Первая таблица дает «справочник» игроков, вторая — их игровые показатели. Связка между ними — по игроку и сезону.

Проблема: данные грузятся динамически

Казалось бы, открой страницу и забери таблицу — но на деле всё сложнее. Таблицы на сайте РПЛ используют lazy loading: при первой загрузке отображается только первые несколько десятков строк, а остальные подтягиваются по мере прокрутки страницы. Это типовая история для современных сайтов и неудобная для парсера.

Дополнительный нюанс: каждая страница показывает данные только за один сезон. А нам нужны несколько сезонов — значит, понадобится внешний цикл по сезонам. Для статистики цикл двойной: сезоны × виды статистик (голы, карточки, пенальти и т. д. — каждая метрика на сайте лежит на отдельной вкладке).

Решение: Python + Selenium

Обычный requests тут не подходит — он забирает HTML в том виде, в каком сервер отдал его при первом запросе, без догрузки. Поэтому мы используем Selenium: он запускает реальный браузер, который ведет себя как живой пользователь.

Логика скрипта:

  1. Открыть страницу нужного сезона.

  2. Программно прокручивать ее вниз, пока не перестанут подгружаться новые строки (это и есть «дно» таблицы).

  3. Извлечь полностью загруженную таблицу и сохранить ее.

  4. Перейти к следующему сезону. Для статистики — еще и к следующей метрике.

  5. Объединить все в одну большую «высокую» таблицу.

На выходе — два сырых датасета: один с игроками, другой со статистикой.

Очистка и трансформация данных

После парсинга данные нужно привести в порядок:

  • удалить лишние символы и пробелы, оставшиеся от верстки;

  • привести даты рождения из строки к нормальному типу date;

  • унифицировать названия клубов и позиций (за несколько сезонов они могут писаться по-разному).

И самое интересное — вычисляемый столбец «знак зодиака». Логика прямолинейная: берем дату рождения, проверяем, в какой из 12 диапазонов попадает (21 марта – 20 апреля → Овен и так далее), и пишем результат в новый столбец. Один раз посчитали — и дальше используем как обычное измерение в BI: фильтруем по нему, группируем, строим срезы.

В итоге получаем два чистых Excel-файла: «Игроки» и «Статистики». Это и есть наши источники для дашборда.

Подготовка данных для дашборда

В Modus BI оба файла подключаются как источники и связываются в единую модель данных. Структура связей выглядит так:

  • Игроки — справочная таблица: один игрок = одна строка. В ней — дата рождения, знак зодиака, клуб, позиция, сезон.

  • Статистики — таблица фактов: одна строка = одна метрика одного игрока в одном сезоне (голы, карточки, пенальти и т. д.).

Связь между ними — по идентификатору игрока и сезону. После того как модель собрана, знак зодиака превращается в обычное измерение, по которому можно резать любую метрику: «красные карточки по знакам», «пенальти по знакам у нападающих», «голы по стихиям» — все это строится за несколько кликов, без перепрограммирования источников.

Именно ради этого и нужен гибкий BI: один раз собранная модель позволяет крутить данные в любых разрезах, в том числе таких, о которых при загрузке данных никто не думал.

Распределение по знакам

Прежде чем проверять любые гипотезы, мы посмотрели на дашборде, как игроки РПЛ распределены по знакам зодиака. В итоге игроков-водолеев оказалось в 2–3 раза больше, чем стрельцов. Январь–февраль уверенно доминирует, октябрь–декабрь — в просадке. Между ними — плавный градиент.

Любое сравнение знаков «в лоб», по абсолютным числам, будет нечестным. Если водолеев в датасете больше, у них автоматически будет больше карточек, больше голов, больше всего. Поэтому почти все дальнейшие визуализации мы строили с нормировкой на количество активных игроков соответствующего знака.

Что показали наши дашборды

С распределением разобрались, нормировку заложили — можно возвращаться к исходному спору и проверять гипотезы. Мы заложили сразу несколько сюжетов — например, посмотреть, действительно ли «конфликтные» знаки чаще получают красные карточки, есть ли у каких-то знаков перекос в сторону определённого амплуа на поле, и заодно проверить пару метрик, где астрологию никто не ждет — например, пенальти. Также добавили опцию переключения между светлой и темной темой дашбордов. 

Дальше — по порядку, начиная с самой очевидной гипотезы.

Красные карточки: кто грубит чаще всех

В народной астрологии «конфликтными» обычно считают раков, овнов и скорпионов, а «спокойными» — весов, дев, близнецов. Удобная гипотеза для проверки на данных: если стереотип хоть как-то отражается в поведении, мы должны увидеть это в дисциплинарной статистике.

В качестве маркера агрессии мы взяли красные карточки, а не желтые. Логика простая:

  • Желтая — это нарушение правил. Может быть техническим, тактическим, случайным.

  • Красная — это уже про «иду до конца, не вижу препятствий, пусть я сломаю кому-то ноги, но добьюсь результата». Либо открытый конфликт с другим игроком или судьей.

Желтые карточки как маркер агрессии мы в этом анализе не использовали — слишком много «технического шума». Красные — гораздо честнее отражают агрессию игроков.

Поскольку водолеев в датасете в разы больше, чем стрельцов — мы смотрели не на абсолютное число красных карточек, а на их количество к одному активному игроку знака. Это превращает «больше игроков — больше карточек» в честное сравнение склонности.

Здесь лидерами по «удельной грубости» стали скорпионы, раки, овны, стрельцы, козероги. В конце списка — весы, девы, близнецы, тельцы.

Дальше мы открыли дополнительные разрезы — результат почти не изменился:

  • Нападающие. Картина в целом та же, состав слегка меняется. Овнов среди нападающих особенно много, стрельцы тоже выбиваются вперёд. По стихиям у нападающих в лидерах — огонь, на втором месте вода, земля — в конце.

  • Вратари. Это вообще редкий случай, когда вратарь получает красную карточку, — но в нашем датасете такие эпизоды есть. И тут опять стрельцы и овны вырываются в лидеры. Гипотеза держится даже на такой экзотической выборке.

То есть, в целом, народная классификация «конфликтных» и «спокойных» знаков на данных РПЛ подтвердилась.

На всякий случай мы сгруппировали знаки по стихиям (вода, огонь, земля, воздух) — надеялись что и здесь закономерность сохранится. Не получилось: вода оказалась и в топе, и в середине, огонь скорее ближе к лидерам, земля — где-то рядом. Никакого «огонь = агрессия». Видимо, на уровне стихий астрология не работает.

Пенальти: главный сюжет всей статьи

Дальше мы решили посмотреть долю забитых пенальти от общего числа пробитых мячей. Это интереснее забитых голов, потому что пенальти — больше про холодный расчет, а не про игровую форму или мастерство удара с игры.

Закономерность удивила — чем «раньше» по календарю знак — тем чаще игрок забивает пенальти. В лидерах — водолеи, рыбы. В аутсайдерах — скорпионы, стрельцы, тельцы, весы. Когда мы увидели эту картину, решили, что и здесь есть астрологический эффект. Но все оказалось «приземленней».

Дело в том, что скаутский набор юных футболистов в клубы происходит в начале календарного года — примерно с декабря по конец января. То есть на просмотр берут детей, которым уже исполнилось определённое количество лет. Здесь работает простая арифметика:

  • Ребенок, родившийся в конце декабря – феврале (козерог, водолей, рыбы). На момент скаутинга уже «созрел», ему вот-вот исполнится нужный возраст и его берут в команду.

  • Ребенок, родившийся в октябре–декабре (скорпион, стрелец). На момент скаутинга он почти на год младше своего январского ровесника по сезону. В детском возрасте год — это пропасть по физподготовке и координации. Игрока не берут или берут реже — например, если он особенно талантлив.

В итоге месяц рождения сильно влияет на то, попадешь ли ребенок в скаутский набор. А это, в свою очередь, на общее количество профессиональных футболистов того или иного знака — и, соответственно, на абсолютные показатели в любой статистике, включая пенальти.

Поэтому такая статистика — никак не про хладнокровие знака. Это про социологию детского спорта, которая случайно совпала с границами знаков зодиака. Если бы скаутинг проводили в июле, лидерами по пенальти оказались бы раки и львы — и мы бы рассказывали красивую историю про их «солнечную уверенность».

На наш взгляд, это самый честный вывод всего эксперимента — красивая закономерность на данных может иметь объяснение, которое не имеет никакого отношения к гипотезе. Data Storytelling — это не только про то, чтобы найти паттерн, но и про то, чтобы не обмануть себя при его интерпретации.

Позиции на поле: где звезды промолчали

Здесь мы пытались выяснить, есть ли знаки с явным перевесом в сторону определенного амплуа — вратари, защитники, полузащитники, нападающие. Но в итоге ничего особенного не увидели.

Системной картины, вроде «скорпионы все идут в защиту», «весы все становятся полузащитниками», не вышло. Распределение по позициям внутри каждого знака примерно повторяет общее распределение по лиге. Единственное заметное отклонение — овнов чуть больше среди нападающих, чем можно было бы ожидать. Но это слабый сигнал, на котором серьезных выводов не построишь.

И это нормально: в реальной аналитике не каждая гипотеза должна подтверждаться. Половина пользы дашборда — в том, чтобы быстро отбросить гипотезы, которые не подтверждаются, и не тратить на них время.

Дополнительная проверка на хоккее

После всей футбольной истории осталось ощущение незавершённости — вдруг это какая-то футбольная специфика? Поэтому дальше мы решили проверить эту закономерность на дашборде по КХЛ.

Статистику осложняло то, что хоккей — сам по себе агрессивный вид спорта. Силовые приёмы тут не нарушение, а нормальный элемент игры. Жесткая работа корпусом, столкновения у борта, иногда и согласованные драки как часть шоу — это норма, а не отклонение. То есть порог агрессии в хоккее изначально выше, и «конфликтность по знаку» в этой среде просто не выделяется на общем фоне.

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

По штрафному времени — также не было явных лидеров. При этом, стрелец и козерог, которые были в топе, в хоккее оказались в аутсайдерах.

Но если смотреть по защите — там где защитники чаще агрессируют против нападающих — вперед вырываются одни из главных футбольных агрессоров: скорпионы и раки. Зато овны и козероги, сдвинулись в конец списка. То есть и здесь с футболом пересечение только на 50%.

Астрологическую концепцию не выдержала и проверка годами. 

Предыдущая статистика касалась только сезонов 2024–2025 года. Если смотреть по всем годам, то здесь скорпионы и раки ушли в конец, а козероги, стрельцы, овны — наоборот, подтянулись. 

Единственная корреляция — в явный топ не попадают девы, рыбы и близнецы. Среди активных нарушителей никогда их нет. То есть в целом астрологический подтекст в ХКЛ прослеживается гораздо меньше, чем в футболе — скорее всего потому что хоккей сам по себе агрессивный вид спорта. Сюда, в принципе, не берут нетерпимых к агрессии игроков — они просто не приживутся.

Что получилось в итоге

С точки зрения данных у нас получилось два честных наблюдения:

  • Народная классификация «конфликтных» знаков на данных РПЛ действительно подтвердилась: скорпионы, овны, раки, стрельцы лидируют по красным карточкам, а весы, девы, близнецы стабильно в конце. На КХЛ эффект слабее, но направление то же.

  • Видимая закономерность с пенальти оказалась артефактом скаутингового отбора. Знаки зодиака здесь работают как прокси для месяца рождения, который определяет шансы попасть в детский футбол..

Но главный вывод — не про футбол и не про зодиак.

Мы намеренно взяли датасет, максимально далекий от типовой бизнес-аналитики, и проверили на нем собственный продукт. И увидели, что Modus BI одинаково спокойно работает и с выручкой по филиалам, и с красными карточками по скорпионам — потому что для системы это просто данные, модель и измерения. Гибкость BI — это не маркетинговое слово в презентации, а проверяемое свойство: либо инструмент позволяет аналитику задавать любые вопросы и быстро на них отвечать, либо нет.

Если ваш BI выдерживает астрологию РПЛ — он точно выдержит ваш квартальный отчет.

Присоединяйтесь к нашему BI-сообществу в Telegram и будьте в курсе последних новостей Modus!

Комментарии (0)