Alright, let’s dive into my little project about gathering and messing around with James Justin’s stats. Saw him play a game last week and thought, “Hey, why not dig into his performance a bit?”

First thing I did was scraped data from a couple of sports stats websites. It was a bit of a pain, dealing with different HTML structures, but I managed to get his game logs, overall season stats, and some other bits and pieces. Used Python with BeautifulSoup and Requests, pretty standard stuff. I even tried Selenium for a site that was being a real jerk about letting me scrape, but BeautifulSoup was the main workhorse.
Next up, I dumped all that raw data into a Pandas DataFrame. That’s where the real fun began. Started cleaning the data – fixing inconsistent naming, dealing with missing values (there were a bunch), and converting data types to something usable. For instance, some of the passing accuracy stats were stored as strings with percentage signs; got rid of the % and converted those to floats.
Then I calculated some additional stats that weren’t readily available. Stuff like distance covered per 90 minutes, key passes per possession, and the ratio of tackles won to attempted tackles. These are the kinds of metrics that give you a more nuanced view of his performance beyond the usual goals and assists.
After that, I started visualizing the data. Used Matplotlib and Seaborn to create charts showing his shot map, pass completion rates, and how his performance metrics have changed over the season. I even made a cool radar chart comparing his stats to the average for players in his position.
Finally, I wrote up a little report summarizing my findings, nothing too fancy, just a few paragraphs highlighting the key takeaways from the data. I’m not trying to be a professional scout or anything, just wanted to see what I could learn from the numbers. It was a fun little side project, and I definitely learned a few things about data analysis and James Justin’s playing style in the process.

Lessons Learned:
- Data cleaning is always the most time-consuming part.
- Websites can be real pains when scraping data.
- Visualizations can reveal hidden patterns in the data.
Overall, it was a cool little project and something I plan on doing again for some other players.