In the past few weeks I have been working on putting together code to project "what if" scenarios using xStats. The first results of which you can find in Eno Saris' articles about Justin Bour and dejuicing the baseball. These both made use of the "what if the ball hadn't changed between 2015 and 2017?" what-if scenario. Which is interesting to talk about, but it isn't the only question I have to ask.
Obviously the trade deadline has just passed us by, so that lead to many interesting "what if" questions. What if a player played in a certain stadium? Well, that's what I'm here to talk about today. What would Jonathon Lucroy's stats look like as a Rockie?
In order to address this problem, I wrote a script that measures a batter's batted ball profile. That is, which angles and exit velocities he is more likely to produce, and then created a large pool of "potential batted balls." I then took a large number samples from this pool, and applied them to the remaining schedule for the batter. So, in this case, I imported the Rockies' schedule, selected a bunch of random "potential batted balls", and assigned them to games on the schedule with regard to estimated playing time. I also added in projected strike outs and walks and randomized them in with the batted balls.
I'm not the best at coding, and it might be done more efficiently by someone more proficient, but with this method I can simulate just about 7 seasons in about 30 minutes. In this case I ran the code for about 90 minutes, which came out to about 23 simulated seasons worth of data.
The average results are:
Here are the worst two sims, which are almost identical, along with the best.
Twenty three sims probably isn't enough to draw a strong conclusion. You may wand to see hundreds, thousands or tens of thousands of sims before making up your mind. However, in a time crunch, 23 isn't a terrible number. It is better than one, and it took me about 90 minutes to complete, and that was all I could set aside for today on this particular project.
With all that said, the average results are roughly equal to Lucroy's career numbers, and this is with a hefty boost from his new home ball park. So, maybe that is saying something. This season to date, xStats feels Lucroy has been largely unlucky, having lost 8 singles, a triple, and half a home run to what you might consider "bad luck." His expected slash line to date has been .268/.322/.366, a far cry from his .242/.297/.338 game production. His expected slash line is much closer to his career stats, and much closer to what everyone expected out of him this season.
Of course, his expected results are what the Rockies are trading for, and hope to get out of him from here on out.
When you compare that expected slash line to date to the rest of season projection from these sims, you don't find too large of a difference. It is about 15 points to batting average and on base percentage and 50 points to slugging. The boost in slugging coming from the spacious Coors Field outfield. Note, only about 55% of the simulated plate appearances are in Coors, which reflects the rest of season schedule.
Okay, so all of the above are the results of a simulation I ran, this next section is separate. I have gone through Lucroy's spray chart and translated it to Coors Field, having run an algorithm to translate batted ball distances to the high altitude.
I made all the various failed at bats shades of gray, home runs red, and everything else shades of green and blue. Really, I want you to look at the number of non-red dots that go beyond the fences here. These are all of the batted balls from Lucroy over the past two and a half seasons. You might only expect 10% or so as many batted balls from here on out for Lucroy in Coors Field, but this park should really help his opposite field power. Even when you factor in the tall Coors Field fences.
Okay, so that spray chart was an aside. I thought it was cool, so I included it. Let's get back to the big picture. I am working to build this sort of "what if" calculations into the core of xStats, and use it as a tool to hopefully project players going forward. I'm hoping I can get this up and running in the near future, and cover many of the free agent deals and major trades during the off season. I hope you find it worthwhile.