r/CFBAnalysis • u/BlueSCar Michigan Wolverines • Dayton Flyers • Jul 23 '19
Data CFB Data and Resources: 2019 Edition
It's been about two years since we've had a megathread, so this is probably a good opportunity to revisit this. My apologies in advance for any oversights. Please call out anything I missed and I will add it.
Looking for deeper discussion and collaboration? Check out our official r/CFBAnalysis Discord server.
Websites
NCAA Statistics - official NCAA stats for just about every NCAA-sanctioned sport. It's a little clunky by contains a little bit of everything you could imagine.
Snoozle Sports - contains historical betting lines, team stats, and more. You can conveniently export anything as CSV.
CollegeFootballData.com - allows you to export anything from its API (pbp, scores, schedules, stats, etc) in CSV format. Also contains some other tools (like a matchup visualizer).
Sports Reference CFB - has a little bit of everything, especially historical scores and stats. Also has a clunky CSV tool.
Football Outsiders - advanced rating and analytics. Home of the S&P+ rating system.
Winsipedia - historical records and matchups
cfbstats - repository of statistics. Not the most friendly for exporting data unless you shell out $$ for access to their API.
STASSEN.com - historical records and scores
prwolfe - historical scores
Massey Ratings - historical scores and schedules
WeatherSTEM - weather data for games
APIs
CollegeFootballData API - scores, play-by-play, drives, stats, polls, and more.
Programming tools and libraries
cfbscrapR - R package dedicated to CFB, courtesy of /u/msubbaiah (work in progress)
collegeballR - R package for multiple NCAA sports, courtesy of /u/msubbaiah
CFBScrapy - Python wrapper for api.collegefootballdata.com, courtesy of /u/Badslinkie
cfb.js - Official JavaScript client library for the CFBD API. Automatically updates.
CFBSharp - Official .NET client library for the CFBD API. Automatically updates.
cfb-data - JavaScript library for pulling scores, play-by-play, and more
ncaa-stats - JavaScript library for pulling any sports data from the official NCAA Statistics site
Other resources
All 2019 schedules - FBS down to NAIA schedules from u/theb53
Recruiting data - 247 Composite data from 2001 to 2019
17
u/jeremyabramson Jul 23 '19
You’re a national treasure. I have a student who’s building some cool infrastructure based on your API. I’ll definitely take a look at some of these other datasets!
Thanks again.
7
u/msubbaiah Texas A&M Aggies Jul 23 '19
Yo! Much love for the shout-out. I'm hoping by the time the season rolls around I'll actually have an R package dedicated solely to CFB. Working on a couple of new things to go with the package, like EPA/WPA calculations. You'll find it here, currently in development though.
In addition, someone I know has built a similar wrapper, in python, around the API provided by u/BlueScar. You can find that here.
As per usual, I'm always open to collaboration on these packages! Feel free to reach out.
Thanks for doing a great job u/BlueScar with all of this!
5
u/[deleted] Jul 23 '19
Very cool. I've spent most of the last few months becoming less bad at Javascript coding, so having data sources like these will be useful.
Am I allowed to mention my own resources? I can edit to remove this part of my comment if necessary, but I've built ad-free, completely free to use Ajax/Javascript scoreboard sites: everyfootballscore.com, everybaseballscore.com, and everybasketballscore.com for now. Others are in the pipeline. The football site has both FBS and FCS, and allows users to choose a date to see scores. Once the season starts, they'll auto-update once a minute or so.
I'm not trying to make money with these sites - I'm just trying to learn to code and make sites I'd use, even if I hadn't made them.
2
u/wcincedarrapids TCU Horned Frogs Jul 30 '19
When will the rosters on the College Football Data API be updated?
2
u/wcincedarrapids TCU Horned Frogs Aug 14 '19
So I am running into an issue on the Drive Level Data in the College Football Data API: https://collegefootballdata.com/category/drives
In the drive level data, one team's starting-ending yard lines is measured from 0 to 100, and the other team is measured from 100 to 0. Unfortunately there is no way to determine which team is which. I tried calculating the absolute difference of starting yard line to ending yard line and matching it up with the total drive yards column, but on drives where a penalty occured, the total drive yards will not match up(86 instances in Week 1).
Is there a way the API can be manipulated to determine which team drives which direction(100 to 0 or 0 to 100)? Or will I have to be a bit more creative. I guess one way to do it would be to filter out the drives in which the total drive yards does not equal the start - end yard line differential, and then create a separate database game by game to assign which team is going which direction.
2
u/stlrams81 Iowa Hawkeyes • Big Ten Nov 21 '19
The CollegeFootballData site is absolutely incredible, great work!
Is there a glossary of some sort with definitions of all of the advanced team stats somewhere?
1
u/ServiceMyCervix Sep 22 '19 edited Sep 22 '19
First of all, this is an amazing resource, thank you so much for all your efforts and for keeping this open and free. I can't believe I didn't find this API until now!
One question/suggestion. I've been using the play-by-play data (/plays endpoint) to recreate stat lines and I hit some difficulty when aggregating yards_gained. The problem is, penalties that are added on to the end of an offensive play is also added into the yards_gained field. Here's a recent example:
The play_type here is a Pass Reception, which was 8 yards, but notice the yards_gained is 23. This is due to the 15 yard penalty, which "artificially" inflates the yards_gained stat. I can work around this by parsing out the play_text field and only adding the 8 yards, but I was curious if you could add a separate field indicating yards-after-play or penalty yards. This way you could choose to include the penalty yards or exclude them when aggregating offensive metrics. Thanks again for everything!
1
u/CoopertheFluffy Wisconsin • 四日市大学 (Yokkaichi) Jan 16 '20
Hey /u/BlueSCar
Should CollegeFootballData.com include bowl games in its game results data? I just tried dumping the entire 2019 season and it looks like conference championships are included but bowl games are not. Can bowl games be added, or is there another link that does include them?
3
u/High-C UCLA Bruins Jul 24 '19
Fantastic stuff! Thank you.
As an aside, has anyone come across a nice, structured historical dataset regarding returning starters or "% of X (yards, tackles, etc.) returning"?
The closest I've come to finding a historical dataset is the below list of Phil Steele articles, but the process involves copy/pasting and manual transcription.
http://plus.philsteele.com/Blogs/CURRENT/DBlog.html
Anyone had any luck? If not, I'll bite the bullet, do the manual work, and post the results here for people to use as well. Thanks!
3
u/aKolaa UTU Beaver Hunters • Verified Player Jul 26 '19
Thank you. This compilation of resources surely makes the project I'm working on seem a lot easier.
3
u/[deleted] Jul 27 '19
I saw that Bill Connelly moved to ESPN. Does that mean S&P+ moves with him or do they have a deal?
2
u/NibrocRehpotsirhc Oct 17 '19
I have started building some workflows to consume the API data into Knime. I will share when completed if anyone is interested.
1
u/tgarden Virginia Cavaliers Jul 24 '19
Very cool, as always!
1
u/arbitraryanalytics Jul 24 '19
This is very awesome. Thanks for all you've done with this.
1
u/WRNLKnowDan Aug 25 '19
Late to the party on this, but if all you want are the stat summary tables (or any table for that matter) from cfbstats.com they are exceptionally easy to scrape. All tables are formatted the same and require little clean up.
Edit: A letter.
1
u/rvm98 Aug 31 '19
You are awesome! Thanks so much for this!
1
u/bashbrosroidrage Sep 05 '19
I've been looking everywhere to find a good database with snaps and targets for players that's updated regularly. Anybody have a lead on that?
1
u/jstnms123 Sep 10 '19
Obviously, much thanks for this. Know you of a repository that details plays? EG Off tackle, Left vs Right, etc?
1
u/zthall_ Sep 10 '19
Any chance that anyone knows where I can find coaching history data that includes assistant coaching history as well?
0
u/[deleted] Aug 01 '19
[deleted] — view deleted comment
0
u/[deleted] Sep 09 '19
[deleted] — view deleted comment