Okay, so I got this idea buzzing around my head a while back. Started thinking about baseball, specifically homeruns. You know, those big hits. Wondered if I could figure out, maybe guess, when they might happen more often for certain players.

Getting Started
First thing, obviously, needed some info. Where do you even start? I poked around online, looking for player stats. Found a bunch of sites, some better than others. Grabbed historical data – who hit how many dingers, when, against who. It was a bit messy, honestly. Had to clean it up quite a bit just to make sense of it.
My initial thought was super simple: just look at guys who hit a lot of homers last season or the season before. Figured, hey, past performance, right? So I pulled those numbers, made a list.
Digging Deeper
Well, turns out, just looking at past totals isn’t quite enough. Players have good streaks, bad streaks. Pitchers matter. A lot. So, I realized I needed more pieces to this puzzle.
I started pulling in pitching data. Who’s on the mound? How do they usually do against certain types of hitters? Lefty vs. righty stuff, ground balls vs. fly balls. That kind of thing.
Then I thought about the ballparks. Some places are just easier to hit homeruns in. You got short porches, wind blowing out. So, I added ballpark factors to my pile of data.

- Player history (hitting)
- Pitcher history (tendencies)
- Ballpark factors
- Matchup specifics (lefty/righty etc.)
Felt like I was getting somewhere, gathering all these bits and pieces.
Putting it Together (Trial and Error)
This was the tricky part. How to mash all this information together? Started with some basic weighting in a spreadsheet. Like, okay, this player is hot, the pitcher gives up bombs, it’s a hitter’s park… maybe add those points up?
It was pretty crude. I fiddled with the numbers, trying different combinations. Then I wrote some simple scripts, nothing fancy, just to automate the calculations because doing it by hand was getting old fast.
I’d run my calculations for upcoming games, make a list of guys I thought had a good shot. Then I’d watch the games or check the box scores the next day.
Checking the Results
Let me tell you, the first few attempts were rough. Way off sometimes. Guys I picked would go 0-for-4, and some random dude I ignored would hit two out. It’s baseball, unpredictable.

So, back to the drawing board. Looked at what went wrong. Did I weigh pitcher performance too much? Not enough? Was the ballpark factor really that important? Tweaked the formulas again. And again.
It became this cycle: gather data, run the numbers, check against reality, adjust, repeat. Spent quite a few evenings just tinkering with it.
Where It’s At Now
After a lot of messing around, I got it to a point where it’s… okay. It’s not magic, definitely not printing money or anything. It flags players who, based on the data I’ve fed it, seem to have a better chance on a given day. Sometimes it’s right, sometimes it’s completely wrong.
I still run it sometimes, mostly just for fun now. See if my little system picks the guy who actually goes deep. It’s a decent conversation starter, I guess. Learned a bit doing it, mostly about how much data is out there and how hard it is to predict anything perfectly in sports. Still, was a pretty interesting little project to keep me busy.