Этот репозиторий, предоставленный вам StatsBomb, представляет собой пакет Python, который позволяет пользователям легко передавать данные StatsBomb в потоковую передачу Python, используя ваши учетные данные для входа в API или бесплатные данные с нашей страницы GitHub. Доступ к API предназначен только для платящих клиентов.
Поддержка: [email protected]
pip install statsbombpy
nose2 -v --pretty-assert
Аутентификацию можно выполнить, установив переменные среды с именами SB_USERNAME
и SB_PASSWORD
в свои учетные данные для входа.
Альтернативно, если вы не хотите использовать переменные среды, все функции принимают аргумент creds
для передачи ваших учетных данных в формате {"user": "", "passwd": ""}
Вы можете указать, сколько ядер вашего компьютера будет использоваться при запуске функций sb.competition_events()
и sb.competition_frames()
, установив для переменной среды SB_CORES
число, которое вы хотите использовать. Разрешение statsbombpy использовать больше ядер ускорит эти функции.
Если у вас не установлена переменная среды, мы попытаемся определить количество ядер в вашей системе и использовать на 2 меньше этого числа. Если мы не можем определить количество ядер, мы устанавливаем число 4.
Доступ к открытым данным StatsBomb можно получить без необходимости аутентификации.
StatsBomb стремится публично делиться новыми данными и исследованиями, чтобы улучшить понимание игры в футбол. Мы хотим активно поощрять новые исследования и анализ на всех уровнях. Поэтому мы сделали определенные лиги данных StatsBomb бесплатными для публичного использования для исследовательских проектов и подлинного интереса к футбольной аналитике.
StatsBomb надеется, что, сделав данные бесплатными, мы расширим сообщество футбольных аналитиков и привлечем в отрасль новые таланты. Мы хотели бы собрать некоторую базовую личную информацию о пользователях наших данных. Если вы предоставите нам свой адрес электронной почты, это означает, что мы сообщим вам, когда опубликуем дополнительные данные, учебные пособия и исследования. Мы будем хранить информацию в соответствии с нашей Политикой конфиденциальности и GDPR.
Хотя мы стремимся делиться данными и способствовать проведению исследований, мы также призываем вас нести ответственность за данные. Пожалуйста, зарегистрируйте свои данные на https://www.statsbomb.com/resource-centre и внимательно прочитайте наше Пользовательское соглашение. Используя этот репозиторий, вы соглашаетесь с пользовательским соглашением. Если вы публикуете, делитесь или распространяете какие-либо исследования, анализ или идеи, основанные на этих данных, укажите источник данных как StatsBomb и используйте наш логотип.
from statsbombpy import sb
sb.competitions()
соревнование_id | Season_id | название_страны | название_конкурса | конкуренция_пол | название_сезона | match_updated | match_available | |
---|---|---|---|---|---|---|---|---|
0 | 9 | 42 | Германия | 1. Бундеслига | мужской | 2019/2020 | 2019-12-29T07:47:45.981 | 2019-12-29T07:47:45.981 |
1 | 9 | 4 | Германия | 1. Бундеслига | мужской | 2018/2019 | 2019-12-16T23:09:16.168756 | 2019-12-16T23:09:16.168756 |
2 | 9 | 1 | Германия | 1. Бундеслига | мужской | 2017/2018 | 2019-12-16T23:09:16.168756 | 2019-12-16T23:09:16.168756 |
3 | 78 | 42 | Хорватия | 1. ХНЛ | мужской | 2019/2020 | 2020-01-02T10:35:49.065 | 2020-01-02T10:35:49.065 |
4 | 10 | 42 | Германия | 2. Бундеслига | мужской | 2019/2020 | 2019-12-27T00:36:37.498 | 2019-12-27T00:36:37.498 |
sb.matches(competition_id=9, season_id=42)
match_id | match_date | подать мяч | соревнование | сезон | домашняя_команда | выездная_команда | home_score | away_score | match_status | последнее_обновлено | match_week | конкурс_этап | стадион | судья | home_managers | away_managers | версия_данных | shot_fidelity_version | xy_fidelity_version | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 303299 | 2019-12-15 | 18:00:00.000 | Германия - 1. Бундеслига | 2019/2020 | Шальке 04 | Айнтрахт Франкфурт | 1 | 0 | доступный | 2019-12-17T09:50:17.558 | 15 | Регулярный сезон | ВЕЛТИНС-Арена | Ф. Цвайер | Дэвид Вагнер | Ади Хюттер | 1.1.0 | 2 | 2 |
1 | 303223 | 2019-09-01 | 18:00:00.000 | Германия - 1. Бундеслига | 2019/2020 | Айнтрахт Франкфурт | Фортуна Дюссельдорф | 2 | 1 | доступный | 2019-12-16T23:09:16.168756 | 3 | Регулярный сезон | Коммерцбанк-Арена | Ф. Вилленборг | Ади Хюттер | Фридхельм Функель | 1.1.0 | 2 | 2 |
2 | 303083 | 2019-12-15 | 15:30:00.000 | Германия - 1. Бундеслига | 2019/2020 | Вольфсбург | Боруссия Менхенгладбах | 2 | 1 | доступный | 2019-12-17T15:52:17.843 | 15 | Регулярный сезон | ФОЛЬКСВАГЕН АРЕНА | Ф. Брых | Оливер Гласнер | Марко Роуз | 1.1.0 | 2 | 2 |
3 | 303266 | 2019-12-14 | 15:30:00.000 | Германия - 1. Бундеслига | 2019/2020 | Герта Берлин | Фрайбург | 1 | 0 | доступный | 2019-12-17T17:43:18.285 | 15 | Регулярный сезон | Олимпийский стадион Берлин | Ф. Вилленборг | Юрген Клинсманн | Кристиан Штрайх | 1.1.0 | 2 | 2 |
4 | 303073 | 2019-12-21 | 15:30:00.000 | Германия - 1. Бундеслига | 2019/2020 | Бавария Мюнхен | Вольфсбург | 2 | 0 | доступный | 2019-12-23T18:02:36.454 | 17 | Регулярный сезон | Альянц Арена | К. Дингерт | Ханс-Дитер Флик | Оливер Гласнер | 1.1.0 | 2 | 2 |
sb.lineups(match_id=303299)["Eintracht Frankfurt"]
player_id | имя_игрока | player_nickname | Дата рождения | player_gender | player_height | player_weight | номер_джерси | страна | |
---|---|---|---|---|---|---|---|---|---|
0 | 3204 | Алмами Туре | Никто | 28 апреля 1996 г. | мужской | 182,0 | 72,0 | 18 | Мали |
1 | 5591 | Филип Костич | Никто | 01.11.1992 | мужской | 184,0 | 82,0 | 10 | Сербия |
2 | 7713 | Обите Эван Н"Дика | Эван Н'Дика | 20 августа 1999 г. | мужской | 190,0 | НЭН | 2 | Франция |
3 | 8307 | Мартин Хинтереггер | Никто | 7 сентября 1992 г. | мужской | 184,0 | 83,0 | 13 | Австрия |
4 | 8669 | Мият Гачинович | Никто | 8 февраля 1995 г. | мужской | 175,0 | 66,0 | 11 | Сербия |
Настройки по умолчанию для запроса событий возвращают один кадр данных со всеми типами событий и атрибутами событий.
events = sb.events(match_id=303299)
ball_receipt_outcome | ball_recovery_offensive | ball_recovery_recovery_failure | блок_дефлексия | перенос_конца_локации | Clearance_aerial_won | зазор_body_part | зазор_голова | зазор_left_foot | зазор_right_foot | контрпрессинг | dribble_no_touch | dribble_outcome | dribble_overrun | дуэль_результат | тип дуэли | продолжительность | foul_committed_advantage | foul_committed_card | foul_won_advantage | foul_won_defensive | вратарь_body_part | gokeeper_end_location | вратарь_результат | позиция_вратаря | техника_вратаря | тип_вратаря | идентификатор | индекс | травма_stoppage_in_chain | перехват_результат | расположение | match_id | минута | off_camera | вне | pass_aerial_won | pass_angle | pass_assisted_shot_id | pass_body_part | pass_cross | pass_cut_back | pass_deflected | pass_end_location | pass_goal_assist | проход_высота | длина прохода | pass_outcome | pass_outswinging | pass_recipient | pass_shot_assist | pass_straight | pass_switch | pass_technique | пас_через_шар | pass_type | pass_xclaim | период | play_pattern | игрок | позиция | владение | команда_владения | связанные_события | второй | shot_aerial_won | shot_body_part | shot_end_location | shot_first_time | shot_freeze_frame | shot_key_pass_id | shot_one_on_one | shot_outcome | shot_statsbomb_xg | shot_statsbomb_xg2 | техника выстрела | тип_выстрела | substitution_outcome | substitution_replacement | команда | временная метка | тип | разрежение | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
500 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 3,498736 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 84828c06-41b5-44eb-aa92-1710bdb818ac | 1838 г. | НЭН | НЭН | [50.1, 16.6] | 303299 | 47 | НЭН | НЭН | НЭН | 2,720095 | НЭН | Левая нога | НЭН | НЭН | НЭН | [13.3, 33.1] | НЭН | Земельный пропуск | 40,329765 | НЭН | НЭН | Фредерик Рённов | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 2 | Регулярная игра | Обите Эван Н"Дика | Левый центральный защитник | 103 | Айнтрахт Франкфурт | [ae3094e3-faa3-4608-8284-d9b8cca77711, c1202f1c-0831-4e88-83b2-597f56f0c858] | 52 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Айнтрахт Франкфурт | 00:02:52.438 | Проходить | Истинный |
501 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 3,604236 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 9061cd20-513b-499f-b925-f1de5f241281 | 1840 г. | НЭН | НЭН | [13.3, 33.1] | 303299 | 47 | НЭН | НЭН | НЭН | -0,153945 | НЭН | Правая нога | НЭН | НЭН | НЭН | [77.1, 23.2] | НЭН | Высокий проход | 64,563540 | Неполный | НЭН | Мият Гачинович | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 2 | Регулярная игра | Фредерик Рённов | Вратарь | 103 | Айнтрахт Франкфурт | [8e6495a7-782a-4f1a-845f-3ec50d761a1e, ff758a12-1ba6-4dd4-8b2c-7d39aa7aed97] | 55 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Айнтрахт Франкфурт | 00:02:55.937 | Проходить | НЭН |
502 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 2.101999 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 8e6495a7-782a-4f1a-845f-3ec50d761a1e | 1842 г. | НЭН | НЭН | [43.0, 56.9] | 303299 | 47 | НЭН | НЭН | НЭН | -0,703110 | НЭН | Голова | НЭН | НЭН | НЭН | [64.0, 39.1] | НЭН | Высокий проход | 27,528894 | НЭН | НЭН | Амин Харит | НЭН | НЭН | НЭН | НЭН | НЭН | Восстановление | НЭН | 2 | Регулярная игра | Озан Мухаммед Кабак | Правый центральный защитник | 104 | Шальке 04 | [9061cd20-513b-499f-b925-f1de5f241281, be6dfe7d-7596-4cc2-8cd9-8c17d064317e] | 59 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Шальке 04 | 00:02:59.541 | Проходить | НЭН |
503 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 1,187459 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 86431bc7-210a-4868-8e18-26ff38becefc | 1854 г. | НЭН | НЭН | [65.9, 12.6] | 303299 | 48 | НЭН | НЭН | НЭН | -0,730239 | НЭН | Правая нога | НЭН | НЭН | НЭН | [74.5, 4.9] | НЭН | Земельный пропуск | 11,543396 | НЭН | НЭН | Амин Харит | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 2 | Регулярная игра | Суат Сердар | Левый опорный полузащитник | 104 | Шальке 04 | [761b4e65-8f64-464c-8153-6a98465208ba] | 7 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Шальке 04 | 00:03:07.689 | Проходить | НЭН |
504 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 0,766628 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 6e58c713-622c-4246-8243-e4162e487a1c | 1858 г. | НЭН | НЭН | [79.1, 10.5] | 303299 | 48 | НЭН | НЭН | НЭН | 1,254940 | НЭН | Правая нога | НЭН | НЭН | НЭН | [84.1, 25.8] | НЭН | Земельный пропуск | 16.096273 | НЭН | НЭН | Раввин Матондо | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 2 | Регулярная игра | Амин Харит | Центральный атакующий полузащитник | 104 | Шальке 04 | [b1960a76-d3ae-4ef3-a2cd-47eca8c25e0a, dd1575c0-a408-4177-944d-7e86d2f79181] | 11 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Шальке 04 | 00:03:11.719 | Проходить | Истинный |
Также возможно получить отдельные кадры данных для каждого типа событий и/или иметь разные атрибуты событий в своих столбцах.
sb.events(match_id=303299, split=True, flatten_attrs=False)["dribbles"]
идентификатор | индекс | период | временная метка | минута | второй | тип | владение | команда_владения | play_pattern | команда | игрок | позиция | расположение | продолжительность | разрежение | связанные_события | капать | match_id | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | b190c01f-ad24-468c-8241-f955b91d996c | 131 | 1 | 00:02:08.032 | 2 | 8 | Ведение мяча | 4 | Шальке 04 | Регулярная игра | Шальке 04 | Даниэль Калиджури | Правый фланг | [110.2, 62.9] | 0,000000 | Истинный | [60f822df-5747-4787-b0f9-45bf5217eb8a] | {'outcome': {'id': 8, 'name': 'Complete'}} | 303299 |
1 | 4d773c92-f89f-491e-b3e0-3a1d2e863148 | 399 | 1 | 00:08:48.623 | 8 | 48 | Ведение мяча | 18 | Шальке 04 | Регулярная игра | Шальке 04 | Амин Харит | Центральный атакующий полузащитник | [88.9, 22.7] | 0,000000 | Истинный | [93d829df-eea7-416b-95aa-7593828cfade] | {'outcome': {'id': 8, 'name': 'Complete'}} | 303299 |
2 | 8a78dce4-998a-4e81-902c-9f3957cebc9d | 460 | 1 | 00:13:30.202 | 13 | 30 | Ведение мяча | 23 | Шальке 04 | Регулярная игра | Шальке 04 | Даниэль Калиджури | Правый фланг | [99.5, 68.1] | 0,007309 | Истинный | [772c5aae-e34e-4364-8a98-7caf7636c90b] | {'outcome': {'id': 9, 'name': 'Incomplete'}} | 303299 |
3 | e44d0122-2f2e-4771-820d-cc326a8b0379 | 496 | 1 | 00:14:10.135 | 14 | 10 | Ведение мяча | 24 | Шальке 04 | От вбрасывания | Шальке 04 | Суат Сердар | Левый опорный полузащитник | [41.2, 31.7] | 0,000000 | Истинный | [4de4039f-7efc-461b-b7d6-27c32ec2cd2a] | {'outcome': {'id': 8, 'name': 'Complete'}} | 303299 |
4 | 9555afbd-d838-42c9-8f80-be3cd09e4c4a | 793 | 1 | 00:20:18.409 | 20 | 18 | Ведение мяча | 33 | Айнтрахт Франкфурт | Регулярная игра | Айнтрахт Франкфурт | Тимоти Чендлер | Правый крайний защитник | [81.8, 75.7] | 0,000000 | Истинный | [a5c88cee-6319-4c25-91cd-8a028d8dbfbf] | {'outcome': {'id': 9, 'name': 'Incomplete'}} | 303299 |
Все события данного соревнования можно запросить и сохранить в одном кадре данных.
events = sb.competition_events(
country="Germany",
division= "1. Bundesliga",
season="2019/2020",
gender="male"
)
grouped_events = sb.competition_events(
country="Germany",
division= "1. Bundesliga",
season="2019/2020",
split=True
)
grouped_events["dribbles"]
идентификатор | индекс | период | временная метка | минута | второй | тип | владение | команда_владения | play_pattern | команда | игрок | позиция | расположение | продолжительность | разрежение | связанные_события | капать | match_id | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | b190c01f-ad24-468c-8241-f955b91d996c | 131 | 1 | 00:02:08.032 | 2 | 8 | Ведение мяча | 4 | Шальке 04 | Регулярная игра | Шальке 04 | Даниэль Калиджури | Правый фланг | [110.2, 62.9] | 0,000000 | Истинный | [60f822df-5747-4787-b0f9-45bf5217eb8a] | {'outcome': {'id': 8, 'name': 'Complete'}} | 303299 |
1 | 4d773c92-f89f-491e-b3e0-3a1d2e863148 | 399 | 1 | 00:08:48.623 | 8 | 48 | Ведение мяча | 18 | Шальке 04 | Регулярная игра | Шальке 04 | Амин Харит | Центральный атакующий полузащитник | [88.9, 22.7] | 0,000000 | Истинный | [93d829df-eea7-416b-95aa-7593828cfade] | {'outcome': {'id': 8, 'name': 'Complete'}} | 303299 |
2 | 8a78dce4-998a-4e81-902c-9f3957cebc9d | 460 | 1 | 00:13:30.202 | 13 | 30 | Ведение мяча | 23 | Шальке 04 | Регулярная игра | Шальке 04 | Даниэль Калиджури | Правый фланг | [99.5, 68.1] | 0,007309 | Истинный | [772c5aae-e34e-4364-8a98-7caf7636c90b] | {'outcome': {'id': 9, 'name': 'Incomplete'}} | 303299 |
3 | e44d0122-2f2e-4771-820d-cc326a8b0379 | 496 | 1 | 00:14:10.135 | 14 | 10 | Ведение мяча | 24 | Шальке 04 | От вбрасывания | Шальке 04 | Суат Сердар | Левый опорный полузащитник | [41.2, 31.7] | 0,000000 | Истинный | [4de4039f-7efc-461b-b7d6-27c32ec2cd2a] | {'outcome': {'id': 8, 'name': 'Complete'}} | 303299 |
4 | 9555afbd-d838-42c9-8f80-be3cd09e4c4a | 793 | 1 | 00:20:18.409 | 20 | 18 | Ведение мяча | 33 | Айнтрахт Франкфурт | Регулярная игра | Айнтрахт Франкфурт | Тимоти Чендлер | Правый крайний защитник | [81.8, 75.7] | 0,000000 | Истинный | [a5c88cee-6319-4c25-91cd-8a028d8dbfbf] | {'outcome': {'id': 9, 'name': 'Incomplete'}} | 303299 |
Если у вас есть доступ к данным 360° о соревновании, вы можете установить include_360_metrics=True
в функциях events()
и competition_events()
, чтобы получать метрики 360°, такие как разрыв строки, которые проходят вместе с данными о событии.
Открытые данные не включают метрики 360°. В настоящее время это доступно только клиентам с подпиской на передачу данных.
events = sb.events(match_id=3837323, include_360_metrics=True)
comp_events = sb.competition_events(
country="Europe",
division="Champions League",
season="2022/2023",
include_360_metrics=True,
)
comp_events
50_50 | bad_behaviour_card | ball_receipt_exceeds_distance | ball_receipt_in_space | ball_receipt_outcome | ball_recovery_offensive | ball_recovery_recovery_failure | блок_дефлексия | block_offensive | блок_save_block | перенос_конца_локации | Clearance_aerial_won | зазор_body_part | зазор_голова | зазор_left_foot | разрешение_другое | зазор_right_foot | контрпрессинг | distance_to_nearest_defender | dribble_no_touch | dribble_nutmeg | dribble_outcome | dribble_overrun | дуэль_результат | тип дуэли | продолжительность | foul_committed_advantage | foul_committed_card | foul_committed_offensive | foul_committed_penalty | foul_committed_type | foul_won_advantage | foul_won_defensive | foul_won_penalty | вратарь_body_part | gokeeper_end_location | вратарь_lost_in_play | вратарь_lost_out | вратарь_результат | позиция_вратаря | вратарь_punched_out | gokeeper_shot_saved_off_target | gokeeper_shot_saved_to_post | голкипер_успех_в_игре | техника_вратаря | тип_вратаря | half_start_late_video_start | идентификатор | индекс | травма_stoppage_in_chain | перехват_результат | line_breaking_pass | расположение | минута | miscontrol_aerial_won | num_defenders_on_goal_side_of_actor | obv_against_after | obv_against_before | obv_against_net | obv_for_after | obv_for_before | obv_for_net | obv_total_net | off_camera | вне | pass_aerial_won | pass_angle | pass_assisted_shot_id | pass_body_part | pass_cross | pass_cut_back | pass_deflected | pass_end_location | pass_goal_assist | проход_высота | pass_inswinging | длина прохода | pass_miscommunication | pass_no_touch | pass_outcome | pass_outswinging | pass_recipient | pass_shot_assist | pass_straight | pass_switch | pass_technique | пас_через_шар | pass_type | pass_xclaim | период | play_pattern | игрок | player_id | player_off_permanent | позиция | владение | команда_владения | ИД_команды_владения | связанные_события | второй | shot_aerial_won | shot_body_part | выстрел_отклонен | shot_end_location | shot_first_time | shot_freeze_frame | shot_key_pass_id | shot_one_on_one | shot_open_goal | shot_outcome | выстрел_перенаправление | shot_saved_off_target | shot_saved_to_post | shot_statsbomb_xg | shot_statsbomb_xg2 | техника выстрела | тип_выстрела | substitution_outcome | substitution_replacement | команда | временная метка | тип | разрежение | видимые_оппоненты | видимые_товарищи по команде | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 0,0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 3479244f-8234-43c9-a389-4ce587062b48 | 1 | НЭН | НЭН | НЭН | НЭН | 0 | НЭН | НЭН | Никто | Никто | Никто | Никто | Никто | Никто | Никто | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 1 | Регулярная игра | НЭН | НЭН | НЭН | НЭН | 1 | Реал Мадрид | 220 | НЭН | 0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Реал Мадрид | 00:00:00.000 | Стартовый XI | НЭН | НЭН | НЭН |
1 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 0,0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | c4f5a51b-741e-4920-ac32-02349b1f2755 | 2 | НЭН | НЭН | НЭН | НЭН | 0 | НЭН | НЭН | Никто | Никто | Никто | Никто | Никто | Никто | Никто | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 1 | Регулярная игра | НЭН | НЭН | НЭН | НЭН | 1 | Реал Мадрид | 220 | НЭН | 0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Селтик | 00:00:00.000 | Стартовый XI | НЭН | НЭН | НЭН |
2 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 0,0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 27be67e7-fdb5-4db9-92b6-8f3214cecec4 | 1 | НЭН | НЭН | НЭН | НЭН | 0 | НЭН | НЭН | Никто | Никто | Никто | Никто | Никто | Никто | Никто | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 1 | Регулярная игра | НЭН | НЭН | НЭН | НЭН | 1 | Ювентус | 224 | НЭН | 0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Ювентус | 00:00:00.000 | Стартовый XI | НЭН | НЭН | НЭН |
3 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 0,0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 819c381e-29c1-4f10-a6c3-acc3181cec14 | 2 | НЭН | НЭН | НЭН | НЭН | 0 | НЭН | НЭН | Никто | Никто | Никто | Никто | Никто | Никто | Никто | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 1 | Регулярная игра | НЭН | НЭН | НЭН | НЭН | 1 | Ювентус | 224 | НЭН | 0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Пари Сен-Жермен | 00:00:00.000 | Стартовый XI | НЭН | НЭН | НЭН |
4 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 0,0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | e6d42d87-c78a-4286-94fd-4095e9f7b16f | 1 | НЭН | НЭН | НЭН | НЭН | 0 | НЭН | НЭН | Никто | Никто | Никто | Никто | Никто | Никто | Никто | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | 1 | Регулярная игра | НЭН | НЭН | НЭН | НЭН | 1 | Манчестер Сити | 36 | НЭН | 0 | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | НЭН | Манчестер Сити | 00:00:00.000 | Стартовый XI | НЭН | НЭН | НЭН |
Функции кадра будут возвращать необработанные данные стоп-кадра на 360 градусов вместе с видимой областью для каждого кадра. Это возвращается на уровне игрока, поэтому у вас есть несколько строк для каждого кадра/event_id.
match_frames = sb.frames(match_id=3772072, fmt='dataframe')
comp_frames = sb.competition_frames(
country="Germany",
division= "1. Bundesliga",
season="2019/2020"
)
match_frames
актер | distance_from_edge_of_visible_area | event_uuid | хранитель | расположение | match_id | товарищ по команде | видимая_область | |
---|---|---|---|---|---|---|---|---|
0 | ЛОЖЬ | 5.183739 | 065b15cc-b550-48de-9a1e-a9608d8e6c6d | ЛОЖЬ | [79.14114105224532, 12.646560364129726] | 3855869 | ЛОЖЬ | [50.8965834880119, 80.0, 55.8915648466696, 6.76382112514142, 80.0765213141343, 1.48859955554994, 113.056993108772, 80.0, 50.8965834880119, 80.0] |
1 | ЛОЖЬ | 7.784551 | 065b15cc-b550-48de-9a1e-a9608d8e6c6d | ЛОЖЬ | [80.68650097437124, 23.040779651892883] | 3855869 | Истинный | [50.8965834880119, 80.0, 55.8915648466696, 6.76382112514142, 80.0765213141343, 1.48859955554994, 113.056993108772, 80.0, 50.8965834880119, 80.0] |
2 | ЛОЖЬ | 8,873694 | 065b15cc-b550-48de-9a1e-a9608d8e6c6d | ЛОЖЬ | [80.20033992405365, 24.695673759901382] | 3855869 | ЛОЖЬ | [50.8965834880119, 80.0, 55.8915648466696, 6.76382112514142, 80.0765213141343, 1.48859955554994, 113.056993108772, 80.0, 50.8965834880119, 80.0] |
3 | ЛОЖЬ | 9.738309 | 065b15cc-b550-48de-9a1e-a9608d8e6c6d | ЛОЖЬ | [82.43349155444821, 32.24426347120625] | 3855869 | ЛОЖЬ | [50.8965834880119, 80.0, 55.8915648466696, 6.76382112514142, 80.0765213141343, 1.48859955554994, 113.056993108772, 80.0, 50.8965834880119, 80.0] |
4 | ЛОЖЬ | 11.049633 | 065b15cc-b550-48de-9a1e-a9608d8e6c6d | ЛОЖЬ | [81.320294294838, 32.98015558905158] | 3855869 | Истинный | [50.8965834880119, 80.0, 55.8915648466696, 6.76382112514142, 80.0765213141343, 1.48859955554994, 113.056993108772, 80.0, 50.8965834880119, 80.0] |
Для клиентов мы также предоставляем агрегированную статистику на уровне матча игрока, сезона игрока и сезона команды.
player_match = sb.player_match_stats(3772072)
player_season = sb.player_season_stats(competition_id=9, season_id=42)
team_match = sb.team_match_stats(3772072)
team_season = sb.team_season_stats(competition_id=9, season_id=42)
player_match
player_match_pressures | player_match_long_balls | player_match_shot_touch_ratio | player_match_passes_into_box | player_match_pressure_duration_avg | player_match_crossing_ratio | player_match_op_f3_forward_passes | player_match_passing_ratio | идентификатор команды | player_match_successful_passes | player_match_op_xgbuildup_per_possession | player_match_op_xgchain | player_match_op_passes_into_box | player_match_deep_progresses | player_match_turnovers | player_match_counterpressured_action_fails | player_match_passes | player_match_key_passes | player_match_dispossessions | player_match_penalties_won | player_match_through_balls | название_команды | player_match_op_passes | player_match_dribbles | player_match_clearances | player_match_forward_passes | player_match_np_xg_per_shot | player_match_counterpressures | player_id | player_match_op_xa | player_match_op_xgchain_per_possession | player_match_минуты | player_match_pressured_long_balls | player_match_op_f3_sideways_passes | player_match_dribbles_faced | player_match_np_xg | player_match_goals | player_match_op_key_passes | player_match_aerial_ratio | player_match_op_shots | player_match_successful_crosses | player_match_shots_blocked | player_match_op_f3_passes | player_match_op_assists | player_match_long_ball_ratio | идентификатор_аккаунта | player_match_np_shots | player_match_challenge_ratio | player_match_touches | player_match_pressure_regains | player_match_crosses_into_box | player_match_fouls | player_match_sideways_passes | player_match_aerials | player_match_touches_inside_box | player_match_counterpressure_duration_total | player_match_successful_aerials | player_match_box_cross_ratio | player_match_xgbuildup_per_possession | player_match_dribbled_past | player_match_pressure_duration_total | player_match_op_xgbuildup | player_match_np_shots_on_target | player_match_interceptions | player_match_counterpressure_duration_avg | player_match_xgchain_per_possession | player_match_successful_long_balls | player_match_op_f3_backward_passes | player_match_xgchain | player_match_tackles | player_match_assists | player_match_sp_xa | player_match_aggressive_actions | имя_игрока | player_match_xa | match_id | player_match_passes_inside_box | player_match_possession | player_match_pressured_action_fails | player_match_crosses | player_match_fouls_won | player_match_xgbuildup | player_match_backward_passes | player_match_unpressured_long_balls | player_match_np_goals | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | НЭН | 10 | 0,000000 | 0 | НЭН | НЭН | 0 | 0,842105 | 870 | 32 | 0,003191 | 0,105292 | 0 | 0 | 0 | НЭН | 38 | 0 | 0 | 0 | 0 | Арминия Билефельд | 33 | 0 | 0 | 9 | НЭН | НЭН | 9194 | 0,000000 | 0,003191 | 94.21667 | 1 | 0 | 0 | 0,000000 | 0 | 0 | НЭН | 0 | 0 | 0 | 0 | 0 | 0,600000 | 48 | 0 | НЭН | 65 | 0 | 0 | 0 | 29 | 0 | 0 | НЭН | 0 | НЭН | 0,003191 | 0 | НЭН | 0,105292 | 0 | 0 | НЭН | 0,003191 | 6 | 0 | 0,105292 | 0 | 0 | 0,000000 | 0 | Стефан Ортега | 0,000000 | 3772072 | 0 | 0,491135 | НЭН | 0 | 0 | 0,105292 | 0 | 9 | 0 |
1 | 8.0 | 0 | 0,033333 | 0 | 0,570626 | 0,0 | 0 | 0,812500 | 870 | 13 | 0,003726 | 0,160582 | 0 | 1 | 3 | 0,0 | 16 | 1 | 3 | 0 | 0 | Арминия Билефельд | 10 | 1 | 1 | 0 | 0,034737 | 1.0 | 9210 | 0,043881 | 0,007299 | 91,90000 | 1 | 4 | 0 | 0,034737 | 0 | 1 | 0,285714 | 1 | 0 | 0 | 6 | 0 | НЭН | 48 | 1 | 1.0 | 30 | 0 | 0 | 0 | 10 | 7 | 5 | 0,327541 | 2 | НЭН | 0,003726 | 0 | 4.565010 | 0,081964 | 0 | 0 | 0,327541 | 0,007299 | 0 | 2 | 0,160582 | 1 | 0 | 0,000000 | 9 | Фабиан Клос | 0,043881 | 3772072 | 1 | 0,491135 | 0,0 | 1 | 1 | 0,081964 | 6 | 0 | 0 |
2 | 7.0 | 13 | 0,000000 | 1 | 1,795411 | 0,0 | 1 | 0,852941 | 190 | 58 | 0,017993 | 0,773687 | 0 | 3 | 0 | 0,0 | 68 | 1 | 0 | 0 | 0 | Союз Берлина | 60 | 0 | 2 | 4 | НЭН | 0,0 | 9164 | 0,000000 | 0,017993 | 94.21667 | 2 | 3 | 0 | 0,000000 | 0 | 0 | 0,666667 | 0 | 0 | 1 | 4 | 0 | 0,615385 | 48 | 0 | 1.0 | 122 | 1 | 0 | 2 | 51 | 3 | 0 | НЭН | 2 | 0,0 | 0,017993 | 0 | 12,567875 | 0,773687 | 0 | 1 | НЭН | 0,019504 | 8 | 0 | 0,838693 | 2 | 0 | 0,043227 | 11 | Кристофер Триммель | 0,043227 | 3772072 | 0 | 0,508865 | 0,0 | 1 | 0 | 0,773687 | 13 | 13 | 0 |
3 | 3.0 | 4 | 0,013699 | 1 | 0,744943 | НЭН | 1 | 0,777778 | 870 | 35 | 0,002196 | 0,090022 | 1 | 1 | 1 | 0,0 | 45 | 0 | 1 | 0 | 0 | Арминия Билефельд | 40 | 0 | 1 | 18 | 0,019468 | 0,0 | 24343 | 0,000000 | 0,002196 | 94.21667 | 1 | 1 | 0 | 0,019468 | 0 | 0 | 0,000000 | 1 | 0 | 1 | 2 | 0 | 0,750000 | 48 | 1 | НЭН | 73 | 0 | 0 | 0 | 22 | 1 | 1 | НЭН | 0 | 0,0 | 0,003043 | 0 | 2,234830 | 0,090022 | 0 | 0 | НЭН | 0,003043 | 3 | 0 | 0,124760 | 0 | 0 | 0,000000 | 3 | Джейкоб Лаурсен | 0,000000 | 3772072 | 0 | 0,491135 | 0,0 | 0 | 1 | 0,124760 | 5 | 4 | 0 |
4 | 14,0 | 6 | 0,000 |