Marcotti

Marcotti (formerly named the Football Match Result Database) is a data schema that captures match result data in order to support football research activities. Match result data is defined as historical and publicly-available data that includes the following:

The Marcotti data schema is made up of backend-independent SQLAlchemy objects, and club and national team databases are built from these objects.

Installation

Marcotti is written in Python and uses the SQLAlchemy package heavily.

While not required, virtualenv is strongly recommended and virtualenvwrapper is very convenient.

Installation instructions:

  1. Setup the virtual environment and use pip to install the package:

    $ cd /path/to/working/dir
    $ mkvirtualenv marcotti
    (marcotti) $ pip install git+https://github.com/soccermetrics/marcotti.git[@{release_tag}]
  2. Run the dbsetup command and answer the setup questions to create configuration and data loading scripts.

    (marcotti-mls) $ dbsetup
    #### Please answer the following questions to setup the folder ####
    Work folder (must exist): [.] /path/to/files
    Logging folder (must exist): [.] /path/to/logs
    Config file name: [local]
    Config class name: [LocalConfig]

    The command will produce three files in the working folder:

    • local.py: A user-defined database configuration file
    • logging.json: Default logging configuration file
    • loader.py: Data loading module

Data Models

Two data schemas are created - one for clubs, the other for national teams. There is a collection of common data models upon which both schemas are based, and data models specific to either schema.

The common data models are classified into five categories:

Documentation

The Marcotti wiki contains extensive user documentation of the package.

License

(c) 2015-2017 Soccermetrics Research, LLC. Created under MIT license. See LICENSE file for details.