Using StatCast and BIS Batted Ball Data to Assess Expected Power Output

Major League front offices have had access to comprehensive StatCast data all season, data that describes essentially everything quantifiable about the movements of fielders, baserunners, batters and the baseball. Those of us in the public realm have only been privy to what’s released sparsely through MLB’s GameDay and At Bat applications. Baseball Savant, an invaluable resource for many things created by Daren Willman, has collected exit velocity and distance for most at bats, presenting it in the form of aggregate statistics for individual players. The data seems to be a little messy, as Jeff Sullivan found, but there’s enough of it that anomalies should be smoothed over enough to make critical conclusions.

At the same time, Baseball Info Solutions has been collecting data for contact quality and direction for every plate appearance since 2002, using manual data entry. Fangraphs recently shared this data on their site, providing information that should prove very useful in lieu of more detailed StatCast or Hitf/x outputs.

This article is my first foray into the new batted ball information and will present a fairly basic expression of expected isolated power. I looked at all hitters in 2015 with at least 65 at-bats of StatCast data and 100 plate appearances overall (all statistics through June 7th) and merged the datasets together to derive an appropriate regression. The good thing about isolated power is that it isn’t that dependent on things such as speed that are immeasurable with by this data. If I were to create a similar metric in the future to predict BABIP or more general measures of production, more datasets would need to be included to capture the additional significant player effects.

The model I came up with uses main effects for average fly ball velocity, average ground ball velocity, average distance, hard-hit percentage and pull percentage, and the interaction effects between average fly ball velocity and average feet, and average fly ball velocity and average ground ball velocity. Basically, it includes effects for each distinct element of contact quality. All together, we have a fair amount of quality data here, but as the season continues the model will need to be re-tuned to account for the new information.

This chart shows a pretty tight fit. If you hit the ball hard, at the right angle and in the right direction, you’re liable to hit a lot for many extra bases. Some players stick out on the chart and I’ve highlighted them with labels. Bryce Harper has hit the ball very hard this year and has been rewarded. But he appears to be hitting above his means and doesn’t deserve to be running away with the sport’s ISO lead. Fifteen hitters have posted better expected isolated slugging percentages.

Taking this information at face value (as a legitimate metric that measures more talent and less noise than standard ISO), we could say that these players can be expected to perform closer to if not at their expected marks in the future. Players who have outperformed their expected isolated power have been lucky to generate so many extra bases given their contact quality, while players who have underperformed have been unlucky. Here is the full table, for reference.

Name xISO ISO Spread Giancarlo Stanton 0.315 0.3 -0.015 Joc Pederson 0.311 0.32 0.009 Steven Souza 0.293 0.22 -0.073 Chris Davis 0.282 0.25 -0.032 Brandon Moss 0.268 0.234 -0.034 Todd Frazier 0.267 0.311 0.044 Paul Goldschmidt 0.26 0.313 0.053 Brandon Belt 0.257 0.215 -0.042 Ryan Howard 0.256 0.25 -0.006 Pedro Alvarez 0.244 0.209 -0.035 Freddie Freeman 0.243 0.221 -0.022 Troy Tulowitzki 0.24 0.191 -0.049 Mark Teixeira 0.236 0.328 0.092 Jay Bruce 0.235 0.196 -0.039 Chris Carter 0.234 0.187 -0.047 Bryce Harper 0.23 0.38 0.15 Ryan Braun 0.227 0.242 0.015 J.D. Martinez 0.227 0.194 -0.033 Mike Trout 0.226 0.278 0.052 Adrian Gonzalez 0.225 0.266 0.041 Mark Trumbo 0.225 0.226 0.001 Adam Lind 0.223 0.219 -0.004 Colby Rasmus 0.223 0.242 0.019 Alex Rodriguez 0.219 0.242 0.023 Mike Napoli 0.219 0.196 -0.023 Brian Dozier 0.218 0.263 0.045 Starling Marte 0.218 0.217 -0.001 Andrew McCutchen 0.215 0.208 -0.007 Evan Gattis 0.215 0.244 0.029 Anthony Rizzo 0.214 0.276 0.062 Adam LaRoche 0.213 0.161 -0.052 Josh Donaldson 0.213 0.264 0.051 Khris Davis 0.212 0.196 -0.016 Miguel Cabrera 0.211 0.238 0.027 Curtis Granderson 0.211 0.156 -0.055 Lucas Duda 0.209 0.22 0.011 Luis Valbuena 0.208 0.214 0.006 Nelson Cruz 0.206 0.284 0.078 Brett Lawrie 0.204 0.126 -0.078 Jose Bautista 0.204 0.279 0.075 Mitch Moreland 0.204 0.204 0 Shin-Soo Choo 0.204 0.186 -0.018 David Freese 0.203 0.191 -0.012 Steve Pearce 0.201 0.15 -0.051 Danny Espinosa 0.201 0.203 0.002 Yoenis Cespedes 0.2 0.2 0 Devon Travis 0.199 0.233 0.034 Nolan Arenado 0.199 0.272 0.073 Charlie Blackmon 0.199 0.158 -0.041 Evan Longoria 0.196 0.141 -0.055 Brandon Crawford 0.195 0.203 0.008 David Peralta 0.195 0.207 0.012 Joey Votto 0.194 0.225 0.031 Brad Miller 0.192 0.179 -0.013 Jason Castro 0.191 0.176 -0.015 Jorge Soler 0.19 0.138 -0.052 Jose Abreu 0.188 0.199 0.011 Marlon Byrd 0.187 0.23 0.043 Eric Hosmer 0.187 0.188 0.001 George Springer 0.186 0.182 -0.004 Carlos Santana 0.186 0.155 -0.031 Gerardo Parra 0.184 0.157 -0.027 Edwin Encarnacion 0.184 0.219 0.035 Matt Adams 0.183 0.132 -0.051 Andre Ethier 0.182 0.212 0.03 Will Middlebrooks 0.181 0.178 -0.003 Prince Fielder 0.181 0.191 0.01 Albert Pujols 0.18 0.249 0.069 Michael Cuddyer 0.18 0.141 -0.039 Michael Morse 0.18 0.078 -0.102 Yasmani Grandal 0.179 0.16 -0.019 Marcell Ozuna 0.178 0.101 -0.077 Marwin Gonzalez 0.176 0.126 -0.05 Logan Forsythe 0.175 0.184 0.009 Jhonny Peralta 0.174 0.203 0.029 Stephen Vogt 0.173 0.254 0.081 Chris Coghlan 0.173 0.194 0.021 Jimmy Paredes 0.171 0.179 0.008 Matt Carpenter 0.171 0.223 0.052 Adam Jones 0.171 0.198 0.027 Josh Reddick 0.17 0.205 0.035 Brian McCann 0.17 0.218 0.048 A.J. Pierzynski 0.169 0.152 -0.017 David Ortiz 0.169 0.156 -0.013 Miguel Montero 0.168 0.172 0.004 Kris Bryant 0.167 0.19 0.023 Seth Smith 0.165 0.226 0.061 Wil Myers 0.164 0.201 0.037 Christian Yelich 0.164 0.063 -0.101 Neil Walker 0.164 0.132 -0.032 Justin Turner 0.163 0.189 0.026 Carlos Beltran 0.163 0.153 -0.01 Marcus Semien 0.163 0.149 -0.014 Logan Morrison 0.162 0.131 -0.031 David DeJesus 0.162 0.16 -0.002 Lorenzo Cain 0.162 0.126 -0.036 Billy Butler 0.161 0.1 -0.061 Eduardo Escobar 0.161 0.125 -0.036 Kendrys Morales 0.16 0.176 0.016 Torii Hunter 0.16 0.171 0.011 Carlos Gomez 0.158 0.179 0.021 Nick Castellanos 0.157 0.122 -0.035 Carlos Gonzalez 0.156 0.137 -0.019 Ian Desmond 0.155 0.141 -0.014 Kyle Seager 0.155 0.184 0.029 Matt Duffy 0.155 0.134 -0.021 Mark Canha 0.155 0.184 0.029 Hanley Ramirez 0.154 0.214 0.06 Chase Headley 0.154 0.133 -0.021 Chris Colabello 0.154 0.174 0.02 Derek Norris 0.153 0.181 0.028 Yangervis Solarte 0.153 0.104 -0.049 Robinson Cano 0.152 0.081 -0.071 Justin Upton 0.152 0.215 0.063 Adrian Beltre 0.15 0.15 0 Buster Posey 0.15 0.165 0.015 Salvador Perez 0.15 0.176 0.026 Caleb Joseph 0.149 0.138 -0.011 A.J. Pollock 0.149 0.173 0.024 Russell Martin 0.149 0.215 0.066 Trevor Plouffe 0.149 0.184 0.035 Dustin Ackley 0.148 0.134 -0.014 Alex Gordon 0.147 0.175 0.028 Wilmer Flores 0.147 0.175 0.028 David Murphy 0.145 0.147 0.002 Avisail Garcia 0.145 0.141 -0.004 Jordy Mercer 0.145 0.073 -0.072 Kolten Wong 0.145 0.156 0.011 Matt Kemp 0.144 0.097 -0.047 Dustin Pedroia 0.143 0.148 0.005 Nick Hundley 0.143 0.166 0.023 Daniel Murphy 0.142 0.131 -0.011 Mookie Betts 0.141 0.133 -0.008 Ryan Zimmerman 0.14 0.14 0 Kevin Kiermaier 0.139 0.175 0.036 Conor Gillaspie 0.138 0.127 -0.011 Manny Machado 0.137 0.187 0.05 Francisco Cervelli 0.137 0.074 -0.063 Starlin Castro 0.135 0.087 -0.048 Zack Cozart 0.135 0.174 0.039 Kevin Pillar 0.133 0.122 -0.011 Jake Marisnick 0.133 0.148 0.015 Austin Jackson 0.132 0.114 -0.018 Cody Asche 0.13 0.094 -0.036 Asdrubal Cabrera 0.13 0.104 -0.026 Kole Calhoun 0.13 0.123 -0.007 Yasmany Tomas 0.129 0.085 -0.044 Alexei Ramirez 0.129 0.087 -0.042 Yadier Molina 0.128 0.048 -0.08 Victor Martinez 0.128 0.054 -0.074 Ike Davis 0.126 0.146 0.02 Josh Harrison 0.126 0.132 0.006 Michael Brantley 0.126 0.159 0.033 Odubel Herrera 0.126 0.117 -0.009 Jeff Francoeur 0.125 0.169 0.044 Aramis Ramirez 0.124 0.166 0.042 Brett Gardner 0.123 0.16 0.037 Will Venable 0.122 0.148 0.026 Jimmy Rollins 0.122 0.135 0.013 Joe Panik 0.122 0.141 0.019 Martin Prado 0.12 0.087 -0.033 Juan Uribe 0.12 0.112 -0.008 Rene Rivera 0.12 0.08 -0.04 Cory Spangenberg 0.119 0.113 -0.006 J.T. Realmuto 0.118 0.135 0.017 Kurt Suzuki 0.117 0.079 -0.038 Mike Moustakas 0.117 0.146 0.029 Ender Inciarte 0.115 0.093 -0.022 Delmon Young 0.115 0.077 -0.038 Gregory Polanco 0.115 0.109 -0.006 Brock Holt 0.114 0.116 0.002 Lonnie Chisenhall 0.113 0.136 0.023 Jason Kipnis 0.113 0.18 0.067 Ryan Goins 0.113 0.09 -0.023 Nick Ahmed 0.113 0.099 -0.014 Jason Heyward 0.113 0.132 0.019 Denard Span 0.113 0.165 0.052 Jose Altuve 0.112 0.107 -0.005 DJ LeMahieu 0.112 0.094 -0.018 Johnny Giavotella 0.112 0.092 -0.02 Matt Joyce 0.111 0.138 0.027 Nick Markakis 0.111 0.067 -0.044 Pablo Sandoval 0.111 0.111 0 Leonys Martin 0.111 0.102 -0.009 Andrelton Simmons 0.11 0.117 0.007 Xander Bogaerts 0.109 0.106 -0.003 Jean Segura 0.108 0.127 0.019 Adeiny Hechavarria 0.108 0.121 0.013 Howie Kendrick 0.108 0.144 0.036 Joe Mauer 0.107 0.101 -0.006 Dexter Fowler 0.107 0.15 0.043 Stephen Drew 0.107 0.168 0.061 Cameron Maybin 0.106 0.132 0.026 Adam Eaton 0.106 0.129 0.023 Brandon Phillips 0.106 0.079 -0.027 Chase Utley 0.105 0.119 0.014 James McCann 0.105 0.126 0.021 Michael Bourn 0.104 0.058 -0.046 Jose Reyes 0.103 0.087 -0.016 Elvis Andrus 0.102 0.079 -0.023 Erick Aybar 0.099 0.052 -0.047 Juan Lagares 0.099 0.071 -0.028 Jace Peterson 0.099 0.074 -0.025 Melky Cabrera 0.098 0.032 -0.066 Danny Santana 0.095 0.073 -0.022 Jose Ramirez 0.093 0.06 -0.033 Wilson Ramos 0.093 0.117 0.024 Chris Owings 0.092 0.089 -0.003 Matt Holliday 0.092 0.113 0.021 Sam Fuld 0.092 0.096 0.004 Ian Kinsler 0.089 0.089 0 Jon Jay 0.089 0.016 -0.073 Yunel Escobar 0.089 0.072 -0.017 Omar Infante 0.088 0.087 -0.001 Brandon Guyer 0.087 0.107 0.02 Jacoby Ellsbury 0.084 0.047 -0.037 Anthony Gose 0.083 0.11 0.027 Didi Gregorius 0.08 0.073 -0.007 James Loney 0.077 0.101 0.024 Eric Sogard 0.076 0.039 -0.037 Alcides Escobar 0.074 0.091 0.017 Dee Gordon 0.074 0.068 -0.006 Brayan Pena 0.073 0.053 -0.02 Nori Aoki 0.07 0.084 0.014 Alexi Amarista 0.068 0.074 0.006 Angel Pagan 0.067 0.069 0.002 Freddy Galvis 0.065 0.041 -0.024 Billy Hamilton 0.06 0.088 0.028 Ben Revere 0.059 0.083 0.024 Carlos Ruiz 0.057 0.043 -0.014 Alberto Callaspo 0.055 0.039 -0.016 Jose Iglesias 0.053 0.081 0.028 Billy Burns 0.051 0.117 0.066 Ichiro Suzuki 0.007 0.041 0.034

The top five luckiest hitters by a straight spread are Bryce Harper, Mark Teixeira, Stephen Vogt, Nelson Cruz and Jose Bautista. They’re lucky but not bad: the average ISO of hitters in the sample is .152 while the average expected ISO of these five is .210. They’re still crushing the ball. Billy Burns, Russell Martin and Jason Kipnis populated the back spots of the top ten luckiest hitters and have below-average expected ISOs. They are players whose power production warrants concern going forward.

On the other side of the coin, two Marlins in Michael Morse and Christian Yelich are the only players to under-perform by over a tenth, while Marcell Ozuna has been the fifth most notable under-performer. A cursory glance doesn’t reveal any obvious patterns above over-performers or under-performers, and the Q-Q plot for the regression was normal.

Using new batted ball data to investigate expected peripherals seems like a worthy endeavour, something that Breaking Blue may explore further in future posts. An interesting idea would be to come up with expected measures for each fundamental peripheral (BABIP, ISO, K%, BB%) in order to produce an expected slash-line or composite stat such as wOBA.

(Title photo credit to Keith Allison, https://www.flickr.com/photos/keithallison/)