Corrected Exit Velocity Data & Leaderboards
Statcast data is now everywhere and everyone seems to be using it in some form. While detailed pitch information has been available via Pitchf/x, full season batted ball data was missing. Now the batted ball data is leading to some interesting findings, but it’s not a true answer. So far, 12.6% of the batted balls is missing data. I wouldn’t see this as an issue if the missing data was evenly distrusted, but it is biased. I have made a simple correction to the data and now how have available corrected overall data and leaderboards.
I went over the procedure I used to correct the data in this previous article. Here is a quick review of the problem and corrective procedure:
- 12.6% of all the batted balls are missed by Statcast. No bunts or foul balls were counted though.
- Most of the missing data are weak infield popups and groundballs. As a general rule, weak, groundball hitters are missing the most data. For pitchers, groundball pitchers are obviously the ones with more data.
- I found the average value for all detected batted balls fielded by each position.
- If the data is missing, I replaced it with the calculated league average values.
At the time, I wanted to have some form of a leaderboard created. No such luck. My initial query kept timing out, so I could only run a few players at time. I finally cleaned up the code and now can run the yearly averages and here it is:
2015 and 2016 Corrected Statcast Batted Data
The data can be downloaded by going to File -> Download As. A person can sort and filter the data all they want. The data I have included is:
- Name, season, balls in play, percentage missed.
- Corrected and uncorrected average distance, angle, and exit velocity.
- Hitter data includes ISO and HR/FB.
- Pitcher data includes HR/9, HR/FB, BABIP, and GB%.
- I included another sheet of just hitter data on line drives and flyballs to help with home run projections.
What fun is a new dataset without any leaderboards? I will start with the hitters and then move onto the pitchers. I would love to add some more context to each leaderboard, but I am also still trying to process what the data exactly means for fantasy purposes. Enjoy the data and I will be looking into it in the near future.
Hitters
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Aaron Judge | 2016 | 94.5 | 241 | 43 |
Miguel Cabrera | 2015 | 92.0 | 217 | 349 |
Miguel Sano | 2015 | 91.5 | 239 | 162 |
Nelson Cruz | 2016 | 91.3 | 219 | 437 |
Miguel Cabrera | 2016 | 91.3 | 229 | 485 |
Josh Rutledge | 2016 | 91.1 | 186 | 30 |
Tommy Pham | 2016 | 91.0 | 213 | 88 |
Domingo Santana | 2016 | 91.0 | 214 | 156 |
Tyler Flowers | 2016 | 90.9 | 218 | 194 |
Mike Trout | 2015 | 90.9 | 229 | 422 |
Giancarlo Stanton | 2016 | 90.8 | 221 | 275 |
Carlos Peguero | 2015 | 90.7 | 233 | 39 |
Chris Davis | 2015 | 90.5 | 238 | 370 |
Ryan Howard | 2016 | 90.5 | 236 | 220 |
Jesus Montero | 2015 | 90.4 | 213 | 80 |
Jose Tabata | 2015 | 90.3 | 168 | 31 |
Keon Broxton | 2016 | 90.2 | 216 | 119 |
Brandon Snyder | 2016 | 90.1 | 228 | 30 |
Christian Yelich | 2016 | 90.1 | 194 | 445 |
Christian Yelich | 2015 | 90.1 | 177 | 373 |
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Miguel Cabrera | 2015 | 92.0 | 217 | 349 |
Nelson Cruz | 2016 | 91.3 | 219 | 437 |
Miguel Cabrera | 2016 | 91.3 | 229 | 485 |
Mike Trout | 2015 | 90.9 | 229 | 422 |
Giancarlo Stanton | 2016 | 90.8 | 221 | 275 |
Chris Davis | 2015 | 90.5 | 238 | 370 |
Christian Yelich | 2015 | 90.1 | 177 | 373 |
Christian Yelich | 2016 | 90.1 | 194 | 445 |
Miguel Sano | 2016 | 90.0 | 237 | 263 |
Kendrys Morales | 2016 | 89.9 | 221 | 443 |
Ryan Howard | 2015 | 89.9 | 226 | 332 |
Mark Trumbo | 2016 | 89.8 | 219 | 443 |
Kendrys Morales | 2015 | 89.6 | 214 | 469 |
DJ LeMahieu | 2016 | 89.6 | 210 | 478 |
J.D. Martinez | 2016 | 89.6 | 228 | 337 |
Pedro Alvarez | 2015 | 89.5 | 193 | 309 |
Freddie Freeman | 2016 | 89.4 | 237 | 423 |
Khris Davis | 2016 | 89.4 | 223 | 393 |
David Ortiz | 2015 | 89.4 | 217 | 442 |
David Ortiz | 2016 | 89.4 | 235 | 457 |
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
David Wright | 2016 | 89.0 | 247 | 82 |
Brett Nicholas | 2016 | 84.6 | 243 | 31 |
Nick Castellanos | 2016 | 88.5 | 243 | 305 |
Trevor Story | 2016 | 88.0 | 243 | 243 |
Aaron Judge | 2016 | 94.5 | 241 | 43 |
Ryan Schimpf | 2016 | 84.3 | 240 | 174 |
Miguel Sano | 2015 | 91.5 | 239 | 162 |
Matt Carpenter | 2016 | 88.7 | 239 | 367 |
Matt Adams | 2016 | 86.3 | 238 | 218 |
Cole Gillespie | 2016 | 89.9 | 238 | 38 |
Chris Davis | 2015 | 90.5 | 238 | 370 |
Freddie Freeman | 2016 | 89.4 | 237 | 423 |
Miguel Sano | 2016 | 90.0 | 237 | 263 |
Chris Carter | 2016 | 88.7 | 237 | 353 |
Jarrod Saltalamacchia | 2016 | 87.6 | 237 | 147 |
Ryan Howard | 2016 | 90.5 | 236 | 220 |
J.D. Martinez | 2015 | 89.1 | 236 | 421 |
Curt Casali | 2015 | 89.2 | 235 | 68 |
Matt Carpenter | 2015 | 87.2 | 235 | 427 |
David Ortiz | 2016 | 89.4 | 235 | 457 |
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Nick Castellanos | 2016 | 88.5 | 243 | 305 |
Trevor Story | 2016 | 88.0 | 243 | 243 |
Matt Carpenter | 2016 | 88.7 | 239 | 367 |
Chris Davis | 2015 | 90.5 | 238 | 370 |
Freddie Freeman | 2016 | 89.4 | 237 | 423 |
Miguel Sano | 2016 | 90.0 | 237 | 263 |
Chris Carter | 2016 | 88.7 | 237 | 353 |
J.D. Martinez | 2015 | 89.1 | 236 | 421 |
Lucas Duda | 2015 | 88.6 | 235 | 333 |
Matt Carpenter | 2015 | 87.2 | 235 | 427 |
David Ortiz | 2016 | 89.4 | 235 | 457 |
Brandon Belt | 2016 | 84.8 | 234 | 397 |
Chris Davis | 2016 | 88.5 | 234 | 349 |
Brandon Moss | 2016 | 84.6 | 232 | 276 |
Chris Carter | 2015 | 86.5 | 231 | 245 |
Brandon Belt | 2015 | 87.4 | 230 | 349 |
Miguel Cabrera | 2016 | 91.3 | 229 | 485 |
Mike Trout | 2015 | 90.9 | 229 | 422 |
Evan Longoria | 2016 | 87.5 | 229 | 496 |
Daniel Murphy | 2016 | 88.2 | 228 | 482 |
Name | Year | Hit Speed | Hit Distance | Count |
---|---|---|---|---|
Gary Sanchez | 2016 | 100.5 | 376 | 34 |
Trevor Story | 2016 | 95.7 | 358 | 75 |
Giancarlo Stanton | 2015 | 101.7 | 358 | 61 |
Byung-ho Park | 2016 | 97.3 | 357 | 47 |
Franklin Gutierrez | 2016 | 98.5 | 354 | 41 |
Franklin Gutierrez | 2015 | 96.4 | 354 | 30 |
Ryan Raburn | 2016 | 95.9 | 353 | 29 |
Mikie Mahtook | 2015 | 97.9 | 353 | 24 |
Christian Yelich | 2016 | 97.7 | 351 | 65 |
Robinson Chirinos | 2016 | 93.9 | 349 | 25 |
David Freese | 2016 | 96.0 | 349 | 38 |
Ryan Braun | 2016 | 95.7 | 348 | 79 |
Pedro Alvarez | 2015 | 98.3 | 348 | 70 |
Miguel Cabrera | 2016 | 97.1 | 347 | 131 |
Yasmani Grandal | 2016 | 95.1 | 347 | 73 |
Josh Hamilton | 2015 | 96.5 | 346 | 26 |
Tyler Naquin | 2016 | 95.3 | 346 | 47 |
Chris Davis | 2016 | 96.6 | 346 | 124 |
Kendrys Morales | 2016 | 96.0 | 346 | 119 |
Josh Donaldson | 2015 | 96.1 | 345 | 136 |
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Pedro Alvarez | 2015 | 98.3 | 348 | 70 |
Nelson Cruz | 2016 | 98.2 | 344 | 125 |
Christian Yelich | 2016 | 97.7 | 351 | 65 |
Khris Davis | 2016 | 97.3 | 342 | 122 |
Miguel Cabrera | 2016 | 97.1 | 347 | 131 |
Chris Carter | 2016 | 96.8 | 343 | 126 |
Chris Davis | 2016 | 96.6 | 346 | 124 |
Chris Carter | 2015 | 96.5 | 340 | 93 |
Miguel Sano | 2016 | 96.4 | 335 | 93 |
Mike Trout | 2015 | 96.4 | 340 | 115 |
J.D. Martinez | 2015 | 96.4 | 341 | 149 |
Miguel Cabrera | 2015 | 96.3 | 335 | 92 |
Nelson Cruz | 2015 | 96.2 | 340 | 108 |
Joc Pederson | 2016 | 96.2 | 337 | 68 |
Mark Trumbo | 2016 | 96.2 | 338 | 138 |
Josh Donaldson | 2015 | 96.1 | 345 | 136 |
Kendrys Morales | 2016 | 96.0 | 346 | 119 |
Chris Davis | 2015 | 96.0 | 335 | 127 |
Seth Smith | 2016 | 96.0 | 338 | 61 |
Mitch Moreland | 2015 | 96.0 | 342 | 88 |
Pitchers
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Luis Avilan | 2016 | 76.0 | 175 | 39 |
Donnie Hart | 2016 | 76.5 | 155 | 51 |
Aroldis Chapman | 2015 | 77.2 | 180 | 124 |
Shawn Armstrong | 2016 | 77.8 | 182 | 31 |
Luis Avilan | 2015 | 77.9 | 171 | 151 |
Tony Zych | 2015 | 78.4 | 182 | 46 |
Grant Dayton | 2016 | 78.4 | 202 | 54 |
Rich Hill | 2015 | 78.6 | 159 | 63 |
Anthony Swarzak | 2016 | 78.7 | 182 | 84 |
Cory Rasmus | 2015 | 78.7 | 200 | 48 |
Noe Ramirez | 2015 | 78.7 | 191 | 39 |
Ryan O’Rourke | 2015 | 78.8 | 190 | 57 |
Dellin Betances | 2015 | 79.4 | 165 | 157 |
Darren O’Day | 2015 | 79.4 | 205 | 156 |
Pat Venditte | 2016 | 79.4 | 191 | 70 |
Tyler Clippard | 2016 | 79.5 | 206 | 160 |
Koji Uehara | 2015 | 79.5 | 216 | 101 |
Mychal Givens | 2016 | 79.5 | 197 | 173 |
Tyler Wagner | 2016 | 79.7 | 183 | 31 |
Rex Brothers | 2015 | 79.8 | 177 | 32 |
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Jered Weaver | 2015 | 81.1 | 203 | 527 |
Clayton Kershaw | 2015 | 81.5 | 178 | 529 |
CC Sabathia | 2016 | 81.6 | 182 | 534 |
Eduardo Rodriguez | 2016 | 81.6 | 207 | 314 |
Kenta Maeda | 2016 | 81.9 | 199 | 477 |
Dallas Keuchel | 2015 | 82.0 | 160 | 638 |
Jake Arrieta | 2015 | 82.0 | 168 | 569 |
Kyle Hendricks | 2016 | 82.0 | 186 | 517 |
Tommy Milone | 2015 | 82.0 | 192 | 407 |
Chris Young | 2015 | 82.1 | 223 | 367 |
Shelby Miller | 2015 | 82.1 | 187 | 597 |
Chris Sale | 2015 | 82.3 | 201 | 522 |
Jeremy Hellickson | 2016 | 82.3 | 197 | 555 |
Collin McHugh | 2015 | 82.4 | 193 | 618 |
Justin Verlander | 2015 | 82.4 | 206 | 385 |
Tyler Anderson | 2016 | 82.6 | 191 | 340 |
Clayton Kershaw | 2016 | 82.6 | 187 | 352 |
John Danks | 2015 | 82.7 | 199 | 574 |
Johnny Cueto | 2015 | 82.7 | 196 | 628 |
Max Scherzer | 2016 | 82.8 | 208 | 544 |
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Caleb Cotham | 2015 | 93.8 | 221 | 32 |
Josh Ravin | 2015 | 93.2 | 235 | 30 |
Austin Adams | 2016 | 92.5 | 232 | 64 |
Jake Esch | 2016 | 91.2 | 215 | 42 |
Cory Mazzoni | 2015 | 91.0 | 197 | 40 |
Manny Banuelos | 2015 | 90.7 | 225 | 87 |
Chris Capuano | 2016 | 90.6 | 236 | 63 |
Ryan Webb | 2016 | 90.6 | 202 | 62 |
Jacob Turner | 2016 | 90.6 | 213 | 86 |
Kyle Lohse | 2016 | 90.6 | 258 | 40 |
Nick Masset | 2015 | 90.5 | 191 | 84 |
Rob Rasmussen | 2015 | 90.3 | 245 | 54 |
Dalier Hinojosa | 2016 | 90.3 | 188 | 33 |
Erik Johnson | 2016 | 90.2 | 233 | 114 |
Brandon Cunniff | 2016 | 90.2 | 245 | 45 |
Anthony Swarzak | 2015 | 90.1 | 216 | 44 |
Jason Gurka | 2015 | 89.9 | 229 | 30 |
Neil Ramirez | 2015 | 89.9 | 218 | 39 |
Cody Ege | 2016 | 89.8 | 223 | 38 |
Steve Geltz | 2016 | 89.8 | 255 | 79 |
Name | Year | Hit Speed | Hit Distance | Total |
---|---|---|---|---|
Danny Salazar | 2016 | 88.8 | 208 | 356 |
Andrew Cashner | 2016 | 88.7 | 215 | 397 |
Patrick Corbin | 2015 | 88.2 | 207 | 254 |
Marcus Stroman | 2016 | 88.0 | 184 | 626 |
Tyler Duffey | 2016 | 88.0 | 205 | 437 |
Bud Norris | 2016 | 87.6 | 205 | 336 |
James Paxton | 2016 | 87.6 | 197 | 367 |
Nathan Eovaldi | 2016 | 87.6 | 201 | 384 |
Kendall Graveman | 2015 | 87.6 | 195 | 380 |
Williams Perez | 2015 | 87.5 | 197 | 377 |
Wei-Yin Chen | 2016 | 87.3 | 214 | 388 |
Shelby Miller | 2016 | 87.3 | 217 | 342 |
Sonny Gray | 2016 | 87.3 | 193 | 377 |
Patrick Corbin | 2016 | 87.3 | 199 | 492 |
Chris Archer | 2016 | 87.3 | 209 | 537 |
C.J. Wilson | 2015 | 87.2 | 198 | 385 |
Kendall Graveman | 2016 | 87.2 | 191 | 621 |
Jake Odorizzi | 2016 | 87.2 | 218 | 545 |
Matt Andriese | 2016 | 87.2 | 212 | 392 |
Carlos Carrasco | 2016 | 87.2 | 203 | 410 |
Jeff, one of the authors of the fantasy baseball guide,The Process, writes for RotoGraphs, The Hardball Times, Rotowire, Baseball America, and BaseballHQ. He has been nominated for two SABR Analytics Research Award for Contemporary Analysis and won it in 2013 in tandem with Bill Petti. He has won four FSWA Awards including on for his Mining the News series. He's won Tout Wars three times, LABR twice, and got his first NFBC Main Event win in 2021. Follow him on Twitter @jeffwzimmerman.
Why is Stanton so bad in the exit velocity? Worse than tyler flowers and domingo santana? (Top leaderboard)
Just spit-balling here, but perhaps the deviation of the batted ball sample also matters.
For example, if you hit 100 balls at 91mph, you might have worse expected results than if you hit 50 balls at 110mph and 50 balls at 70mph.
But that’s just a guess on my part.
When he hits the ball perfectly, it goes a long, long way. But he doesn’t get that perfect contact anywhere near as often as a guy like Cabrera does.
Trying to hit a home run is different from trying to hit the middle of the ball.