Alright, buckle up, because I’m about to spill the beans on my latest project: trying to build a profile for tennis star Jelena Ostapenko using just data. Yeah, I know, sounds a bit nuts, but hear me out.

It all started with me just messing around with some tennis stats I scraped off the web. I figured, “Hey, wouldn’t it be cool to see if I could kinda ‘recreate’ a player just from their numbers?” Ostapenko was my first target. Why? Well, she’s got a game that’s… let’s just say “unique”. Loads of winners, tons of errors – a real high-risk, high-reward player. Seemed like a fun challenge to try and capture that in a profile.
First thing I did was grab a bunch of match data. We’re talking stats like first serve percentage, winners, unforced errors, break points converted, all that jazz. I spent a solid afternoon just cleaning up the data – you wouldn’t BELIEVE how inconsistent websites can be with their formatting. Seriously, dates were all over the place, some sites used commas for decimals, others used periods… it was a MESS.
After the data cleaning headache, I started digging into the numbers. I wanted to see how Ostapenko’s stats compared to the average WTA player. I calculated things like her average winners per match, her unforced error rate, and her break point conversion percentage. Right away, some things jumped out. Her winners were WAY above average, but so were her unforced errors. Bingo! That’s the Ostapenko we know and love (or hate, depending on the day).
Next, I wanted to look at how her stats changed over time. Did she become more consistent? More aggressive? I plotted her winners and unforced errors over the past few years. It was pretty clear: she’s still riding that rollercoaster. Some stretches where she’s lights out, others where she can’t keep the ball in the court. No real big changes or trends there.
Okay, so now I had a bunch of numbers. But I needed to turn that into something a bit more… visual. I decided to create a radar chart. You know, those spidery diagrams that show a player’s strengths and weaknesses. I plotted things like her first serve percentage, her return points won, her winners, and her unforced errors. The radar chart really highlighted her aggressive game style. High on winners, lower on consistency stats. It was starting to look like a real profile!
But I wasn’t done yet. I wanted to see if I could predict her match outcomes based on her stats. I built a simple model using a bit of machine learning – nothing fancy, just a logistic regression. I fed it her stats from previous matches and the results, and then had it predict the outcome of a few recent matches. It wasn’t perfect, but it got a few right! Definitely something to build on.
Finally, I put it all together in a simple report. It had the basic stats, the radar chart, and the prediction model results. It wasn’t gonna win any awards for design, but it told a story about Ostapenko’s game. Aggressive, unpredictable, and always entertaining.
The biggest takeaway? Data can tell you a lot about a player, but it can’t capture everything. You can’t quantify her fighting spirit or her ability to raise her game in crucial moments. But hey, it’s a fun starting point, and I learned a ton along the way. Maybe I’ll try building a profile for another player next. Serena Williams, perhaps?

- Collected match data
- Cleaned and processed the data
- Calculated key statistics
- Created a radar chart
- Built a simple prediction model
- Compiled a report
It was a messy, fun, and insightful project. I encourage you to try something similar! You might be surprised what you discover.