I hope everyone is staying safe and doing well. My name is Abhijit Gupta and I am a first year at Yale, former captain and lead programmer of FRC 5511. Today, I am excited to share a programming project I have been working on the past couple of weeks: statbotics.io.
Statbotics.io aims to develop and distribute FRC data analysis to a wider audience. As a first direction, I have replicated Caleb Sykes’ highly predictive Elo rankings, and created tabular and chart views on my website. Ever wondered how your team ranks in your region, or who would win a hypothetical match? Now you can find out! In the future, I will be rolling out updates such as OPR calculations, event predictions, Zebra MotionWorks analysis, and more.
I am thankful for everyone who laid the foundations for this effort. Huge shout out to The Blue Alliance team for their amazing API and to Caleb Sykes for introducing Elo to FRC. If you like this project, I have open-sourced my code on Github here, and would love a star and/or fork!
I hope you all enjoy this resource. Let me know if you have any questions, bug reports, or feature requests. I’ll do my best to answer everything here.
Thats so clean! Might I suggest being able to select provinces for Canada? It’s not to the same degree as states in the US, but there is a lot of provincial differences (Ontario being a district, while Quebec and the Western provinces not) and it would make it easier for looking at these regions.
Very cool! I was checking out the elo numbers by year, and it’s crazy how dominant 1114 was between 2007 and 2015. #1 elo 6/9 years, and only once did they have an elo below #2. They only won 1 championship in that time (although they came incredibly close at least two other times), but it shows that simbotics was king before the cheesy poofs’ reign of terror.
These are both good suggestions. I currently store a team’s country unless they are in the USA, in which case I store the state. I can modify this to store both the country and state. I’ll have the update sometime tomorrow!
Love the site! Small bug tho: Doesn’t matter what I fill in on the year table it always tell me I’m looking at 2020, fairly sure I’m looking at different years because the teams do change so its just a minor issue.
I like the site. It will be interesting to see other metrics. It does surprise me how fast a team’s Elo rank can change with one good competition.
On nitpick: when you select say 20 rows per page, it ends up with an internal scrollbar instead of just making the page longer. This kind of defeats the purpose of seeing lots of teams at once and easy scrolling.
Team search revamped (now includes team names, search bar in header)
Some performance improvements (minimizes large API calls in ‘Compare Teams’)
@paulonis I am hosting a ReactJS frontend on Firebase, fetching from a Django backend API on Google Cloud Platform. I have promotional credits to offset costs for roughly a year. At this scale, it’s mostly static costs and the lookups don’t impact the cost significantly.
Given the positive reception to statbotics.io, I have developed a Python API to query the database. In just a few lines of code, one can search the most dominant seasons by Max Elo, compare OPRs from regionals vs districts, check historical match predictions, and so much more!
For more details, check out a Jupyter Notebook demo here, and documentation here. If you like what you’re seeing, I would greatly appreciate a star and/or fork on my GitHub
If you run into bugs, have feature requests, or are just confused about something, please reach out! Feel free to use this thread to share any interesting creations with the library.
This looks great. My friend and I are developing a few software applications for robotics. A TBA-style (but more user-friendly, similar to a social media site). site, app, and discord bot. We were looking for ways to assign each team some sort of rating and this API is sure to help us with that.
I am excited to share some major updates to statbotics.io. There’s a bunch of new content including component OPRs, ranking point strengths, event insights, match prediction, and an event simulator. Check it out!
More details
Component OPRs and RP strengths: using data from each team’s best event, available for all years 2002-Present
I hope you all enjoy these new features. Let me know if you have any questions, bug reports, or feature requests. I’ll do my best to answer everything here.