5 мин.

Аналитика и программирование в футболе

Всем привет. Давно не виделись)

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

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

  1. Выбрать первые 5 туров из всех сыгранных матчей.

  2. Найти среднее количество действий за 90 минут и среднее количество успешных действий за 90 минут по каждой метрике за эти туры (далее — результаты).

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

  4. Если сыграны очередные 5 туров, то подсчитать их результат и добавить в заголовок результаты прошлых 5 туров

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

В приведенном выше примере во второй строчке представлены средние показатели Николая Гиоргобиани за сезон 20/21. Далее 10 матчей в текущем сезоне и его цифры в этих играх. В последней строчке находятся подсчитанные результаты за эти 10 туров.

Теперь можно сравнивать данные во второй строке с данными в последней. Зеленый цвет-улучшение по сравнению с прошлым сезоном. Желтый- улучшение одной части и ухудшение другой. Оранжевый- показатель ниже, чем в прошлом сезоне.

Почему именно так

Вот так выглядит интерфейс статистики футболиста в wyscout:

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

Но зато wyscout позволяет в неограниченном количестве скачивать и настраивать те статистические данные, которые нам интересны. Например, вот тестовая таблица для ЦПЗ (ЦПЗ python). В ней отражаем то, что нам интересно по этому футболисту или по амплуа футбалиста:

Затем нажимаю "Экспорт в Excel" и получаю вот такую стремную таблицу:

Согласитесь она далека от идеала. Данные не структурированы и не подсчитаны. Кроме того в ней нет отбора по нужным матчам.

Однако, обладая минимальными знаниями в области программирования, ее можно менять как угодно. Конечно, сам код написан не по всей правилам хорошего тона программиста, однако, он выполняет свою функцию. Прокручу его, чтобы имели понятие. Но Предупреждаю! Пугаться абсолютно не стоит и закрывать страницу также. Это просто набор команд со своими некоторыми правилами, которыми можно овладеть за пару месяцев и уже выполнять задачи.

В результате мне остается скачать отчет по каждому футболисту. Указать папку со скачанными файлами указать папку, куда сохранить преобразованный отчет и нажать кнопку- выполнить.

Получаем готовый файл в котором:

  1. Отобраны нужные матчи

  2. Таблица структурирована и приведена в читабельный вид

  3. Выведены средние показатели:

Остается просто скопировать таблицу в шаблон.

Вот один из примеров того, как можно применять для автоматизации Python.

За детальным разбором этих и других отчетов, разобранных через Phyton, переходите и подписывайтесь на канал YouTube канал MW.

Если вам стало интересно и появилось желание узнать, как анализировать данные с помощью языка программирования Python: создавать отчеты, работать с табличными данными, визуализировать и кластеризовать данные, пишите, и если наберется некоторое количество людей организуем стримы.