Skip to main content

A high-level framework for sports data analysis

Reason this release was yanked:

This version still supports Python 3.7. or below, which was deprecated in later versions of floodlight. We recommend updating to a newer version of floodlight and the corresponding Python distribution.

Project description

floodlight

PyPI Documentation Status Build Status Linting Status Code style: black

A high-level, data-driven sports analytics framework

floodlight is a Python package for streamlined analysis of sports data. It is designed with a clear focus on scientific computing and built upon popular libraries such as numpy or pandas.

Load, integrate, and process tracking and event data, codes and other match-related information from major data providers. This package provides a set of standardized data objects to structure and handle sports data, together with a suite of common processing operations such as transforms or data manipulation methods.

All implementations run completely provider- and sports-independent, while maintaining a maximum of flexibility to incorporate as many data flavours as possible. A high-level interface allows easy access to all standard routines, so that you can stop worrying about data wrangling and start focussing on the analysis instead!

Features

This project is still in its early childhood, and we hope to quickly expand the set of features in the future. At this point, we've implemented core data structures and parsing functionality for major data providers.

Data objects

  • Data-level objects to store
    • Tracking data
    • Event data
    • Pitch information
    • Codes such as ball possession information

Parser

  • ChyronHego
    • Tracking data
    • Codes
  • DFL
    • Tracking data
    • Codes
    • Event data
  • Kinexon
    • Tracking data
  • Opta
    • Event data (f24 feeds)
  • Stats Perform
    • Tracking data
    • Event data

Installation

The package can be installed easily via pip:

pip install floodlight

Contributing Contributions

Check out Contributing.md for a quick rundown of what you need to know to get started. We also provide an extended, beginner-friendly guide on how to start contributing in our documentation.

Documentation

You can find all documentation here.

Why

Why do we need another package that introduces its own data structures and ways of dealing with certain problems? And, to be honest, what's the purpose of trying to integrate all these different files and fit them into a single framework? Especially since there already exist packages that aim to solve certain parts of that pipeline?

The answer is, while we love those packages out there, that we did not find a solution that did fit our needs. Available packages are either tightly connected to a certain data format/provider, adapt to the subtleties of a particular sport, or only solve one particular problem. This still left us with the essential problem of adapting to all those different interfaces.

We felt that as long as there is no underlying, high-level framework, each and every use case again and again needs its own implementation. At last, we found ourselves refactoring the same code - and there are certain processing or plotting routines that are required in almost every project - over and over again, just to fit the particular data structures we were dealing with at that time.

Related Projects

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

floodlight-0.2.0.tar.gz (65.9 kB view details)

Uploaded Source

Built Distribution

floodlight-0.2.0-py3-none-any.whl (71.9 kB view details)

Uploaded Python 3

File details

Details for the file floodlight-0.2.0.tar.gz.

File metadata

  • Download URL: floodlight-0.2.0.tar.gz
  • Upload date:
  • Size: 65.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.11 CPython/3.8.10 Windows/10

File hashes

Hashes for floodlight-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8a8e05fb0ece54fb45a1110de9a68557bf6b9c108581f574884fab155994b783
MD5 adf0123955a56aa826f1097e3ba0ac24
BLAKE2b-256 1d9f3067d0bbc113ffb2ce2eac620e54578cc137acb34953b00f50bd14158591

See more details on using hashes here.

File details

Details for the file floodlight-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: floodlight-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 71.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.11 CPython/3.8.10 Windows/10

File hashes

Hashes for floodlight-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 542a9c19c6703b8a0d2d5fa656f1f15b61e71589d71edfb2469b0db0fef05e9a
MD5 6b824a8af935e4c77054ad963c553bf0
BLAKE2b-256 8104a288b0a3e3915b33a414cd25fc70e6e15ecc76f6448dacf8912060f2e306

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page