Git Product home page Git Product logo

tennis_matchchartingproject's Introduction

The Match Charting Project

The goal of the Match Charting Project (MCP) is to amass detailed records of professional matches. Organizations such as the ATP, WTA, ITF, and Grand Slam tournaments record some data, but not in a consistent way, and rarely make any of it available to the public.

MCP match records contain shot-by-shot data for every point of a match, including the type of shot, direction of shot, depth of returns, types of errors, and more. There is no publicly-available data like this anywhere else. To get an idea of the possibilities, aggregate match-level data is available for every submitted match at my website[1].

I started this project in late 2013[2], and since then, dozens of contributors[3] have recorded over 5,000 matches. This repo contains both the raw point-by-point data from these matches and extensive match-level aggregate totals.

Files are separated into men's ('-m-') and women's ('-w-') matches. The '-matches' files contain metadata for each match, including the player names, tournament, date, surface, and more. The '-points' files contain extensive data on each point.

The '-points' files are now separated into multiple files per gender, because the single files got too big for GitHub to handle comfortably.

The user-submitted data is found only in the '1st', '2nd', and 'Notes' columns of the points files. All of the other columns are automatically generated by the excel doc[4] used by project contributors. While some of the columns are a bit redundant, many of the others make it easier to analyze the data.

If you have any interest in working with the raw, shot-by-shot data, I strongly encourage you to contribute to the project by charting a match (or twenty) yourself. Not only is it a nice way to give back to the project and help it grow, it is also the best way to learn exactly what you can find in the data.

Here's a guide to help you get started charting your first match: http://www.tennisabstract.com/blog/2015/09/23/the-match-charting-project-quick-start-guide/

Whether you intend to start by charting matches or by jumping straight into the raw data, you'll want to take a look at the 'Instructions' tab of the MatchChart excel doc, which goes into detail regarding the charting notation.

I've now also added several '-stats-' files for both men and women. These contain the aggregate stat lines displayed in each match report. Again, many of the row names will be easier to understand if you've charted a match or two. The rows and columns track very closely to what are shown in the match reports (e.g. http://tennisabstract.com/charting/20150321-M-Irving_CH-SF-Gilles_Muller-Tim_Smyczek.html ). The only difference is that almost all of the data in the '-stats-' files are integer totals, while the match reports display most as percentages.

New matches are submitted several times per week. As the project continues to grow, I will update these files periodically, approximately once per 100 additional matches. Follow me on Twitter[5] for updates on new matches and other improvements to the database.

License

Creative Commons License
Crowdsourced shot-by-shot professional tennis data by The Tennis Abstract Match Charting Project is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Based on a work at https://github.com/JeffSackmann/tennis_MatchChartingProject

In other words: Attribution is required. Non-commercial use only.

I'm serious about the license, and I'm really disappointed with the handful of people who have chosen to violate it. If violations continue, I may stop updating the repo entirely. If you're going to use something that has required thousands of person-hours to build and maintain, it seems to reasonable to require that you understand and follow a simple license.


[1] http://www.tennisabstract.com/charting/meta.html

[2] http://heavytopspin.com/2013/11/26/the-match-charting-project/

[3] http://www.tennisabstract.com/charting/meta.html#contributors

[4] MatchChart 0.x.x.xlsm, included in this repo

[5] http://www.twitter.com/tennisabstract

tennis_matchchartingproject's People

Contributors

jeffsackmann avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tennis_matchchartingproject's Issues

missing columns for some matches

[per email from d.f.]

Looks like the around the match:
20131012-M-Shanghai_Masters-SF-Rafael_Nadal-Juan_Martin_Del_Potro

The data has been shifted over a few columns. For example, rallyNoDirection=15-0, isDouble=9

Citation?

Hi! I'm interested in citing you data in my paper. Could you please provide the citation you'd like to be used? Thanks!

mis-parsed let cord serves

[email from d.f.]

On serves that hit the chord, e.g. "5;w" it seems the "Rally" field is picking up the ";w" and I'm not sure that's intended. It only happens 16 times in the entire dataset.

MCP Spreadsheet 1.5 misinterprets 4;d

I believe it should be a wide serve (net cord) out long. When this is entered as a first serve, the spreadsheet assigns a point to the receiver and ignores a coded second serve.

removing the ';' net cord indicator causes the second serve to be considered

I have encountered other instances where the point result is correct, but because of a ';' net cord present in a first serve, many other statistics are thrown off, such as first/second points won and counts for winners/errors & etc.

Not all matches are Present

Currently, the match charting website lists over 2900 charted matches. I only see about 1800 men's matches referenced in both the charting-m-matches.csv and charting-m-points.csv file. I looked up a few players and was able to find all shot-level data available on the website, just not in the csv files. Is there a reason not all matches are present on github? Thanks

Can't download files

Hello, I previously was able to download the charting-m-matches.csv file but now I seem to be unable to download this file or the charting-w-matches file. The points files don't seem to have this issue and still have a download button. Please let me know if there's a way to download these files. Thanks!

Sao Paulo is misspelled Sao Paolo

20160226-M-Sao_Paolo-R16-Inigo_Cervantes_Huegun-Federico_Delbonis,Inigo Cervantes Huegun,Federico Delbonis,R,L,M,20160226,Sao Paolo,R16,,,Clay,,3,1,jeffsackmann

Tennis Video Analysis tool on Github

image

That is a screenshot of the tool available here: Tennis Video Analysis

It's in Japanese but I can translate if you are interested in collaborating to get more people on board to track matches. Ideally, I'd like to get more detailed info such as bounce location and shot trajectory.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.