Archive for Player Analysis

Julio Teheran Might Need to Re-Invent Himself

Julio Teheran’s career has been one largely defined by consistency. Over his seven full seasons in Atlanta (2013-19), he never made fewer than 30 starts or threw under 174 innings, with ERAs between 2.94 and 4.49. Arguably the most defining element of his reliability was how he consistently out-performed his peripheral numbers. In each of those seasons, Teheran considerably out-pitched both his FIP and xFIP, often by close to a full run.

Julio Teheran Previous Full Seasons
Season ERA FIP xFIP
2013 3.20 3.69 3.76
2014 2.89 3.49 3.72
2015 4.04 4.40 4.19
2016 3.21 3.69 4.13
2017 4.49 4.95 4.96
2018 3.94 4.83 4.72
2019 3.81 4.66 5.26

On the surface, it would appear that Teheran was already declining significantly over the previous three seasons, even if his ERAs failed to reflect such a story. Like many veteran starters, the easy assumption for such a decline would be diminished stuff, but his 22.4% strikeout rate in 2018 was the best of his career to date, with his 21.5% in 2019 not far behind. Teheran’s decline in Atlanta was predominantly marked by a notable loss of control — jumping from a 5.4 BB% in 2016 to 8.9% in 2017, then 11.6% and 11.0% in 2018 and 2019, respectively. Teheran’s streak of consistent results came to a screeching halt in 2020 to the tune of an 10.05 ERA, 8.62 FIP, and 6.35 xFIP, a recipe that culminated in -0.9fWAR.

But the most worrying sign for Teheran is that this is not a continuation of the previous problem. His walk rate for 2020 was 10.7%, still worse than his career average, but a slight improvement on the previous two seasons. What’s particularly alarming is that his strikeout rate plummeted to just 13.4%, while no pitcher in baseball with more than 100 batters faced had a whiff rate lower than Teheran’s 14.6%. Teheran was only hit slightly harder than previously; while his 38.7 hard hit % was notably higher than 2018’s 36.7% and 2019’s 35.4%, his average EV allowed was only slightly worse than league average at 89.0 mph, identical to his 2019 season. When paired alongside his inability to miss bats though, this high volume of hard contact led to disastrous results. Read the rest of this entry »


Introducing Probabilistic Pitch Scores and xWhiff Metrics

With the advent of the Statcast era, a lot of research has been done in attempts to measure the effectiveness of a particular pitch based on its flight characteristics. As has been noted in the past, quantifying a pitcher’s stuff and command is no easy task. However, over the past few months I have worked to build my own models in an attempt to evaluate the “filth” of any given pitch, taking more of a probability-based approach. I introduce to you my Probabilistic Pitch Scores and xWhiff metrics.

When evaluating the quality of a particular pitch, I focused my interest on three different binary outcome variables: whether or not the batter swung at a pitch, whether or not the batter whiffed on a pitch, and whether or not a pitch was thrown for a strike. Thus, my goal was to train three different types of classification models corresponding to each of these variables: a swing, a miss, and a called strike. For the actual outcomes of these models, I was less interested in the model’s decision and more interested in the predicted probability. For example, if a batter swings on a pitch with given flight characteristics, what is the probability that he will whiff? These probabilities were utilized as the basis of my metrics.

Read the rest of this entry »


Using Count Data To Find Unsustainable Performances

In this project I attempted to find the counts in which hitters were most successful during the 2019 season, and then find the hitters that were ending their at-bats in these counts the most in an effort to identify which players could potentially be under- or overperforming both in the past and going forward.

The data for this project was gathered by scraping Baseball Savant, which I used to create a dashboard to assist me in my analysis. I could not analyze every individual outlier performance from 2019 in this post, but the visualization I created can be accessed here, and the Github Repository for my project can be found here so you can take a look for yourself!

As the chart above shows, MLB hitters performed their best in counts with one or no strikes and their worst in two-strike counts. Using this data, I then explored individual performances in each count on the dashboard I had built to attempt to find outliers and discover who was ending at-bats in each count the most. Once players were identified, I would investigate why their performances were outliers and if their performances were sustainable. This post will highlight two of the more interesting unsustainable cases in hitters I found: Paul DeJong and
Javier Báez. Read the rest of this entry »


Finding Ray Fagan: A Minor League Mystery

Sometimes numbers tell a story. Sometimes that story is a mystery.

I came across the Baseball-Reference page for Raymond Fagan and was stunned by what I saw. It says Fagan went 13-0 with a 1.16 ERA for the Class D Oklahoma City Senators in 1915. Now the stunning part – it says it was his only professional season. Despite those dominant results, it appears Fagan never pitched again.

What happened to Raymond Fagan? Did he suffer a career-ending injury? Did he get into legal trouble and change his name? A Google search yielded no answers. This mystery required a deeper dive. Read the rest of this entry »


All Stolen Bases Were Not Created Equal

Fielding percentage is often criticized for the selection bias introduced by a player’s range (good defenders attempt more difficult plays, leading to more errors). A similar issue of selection bias is present in stolen bases. On any given pitch, it is at the sole discretion of the runner if he will steal a base or not. Naturally, the runner will only attempt a stolen base when he believes he has an advantage over the pitcher and catcher.

Ivan Rodriguez caught 46% of base-stealers throughout his career, topping out at a 60% caught stealing rate in his prime and leading the league in CS% in nine seasons. Knowing that stealing against Pudge is little more than a pipe dream for most, only the best baserunners would dare to attempt a steal. If this assumption holds, Rodriguez’s CS% would in fact be far more impressive than initially reported due to the level of competition he faces relative to a typical catcher.

To adjust for selection bias in stolen-base attempts, I developed an ELO model. For those unfamiliar, ELO ratings are a method of calculating the relative skill levels of players in zero-sum games. You might recognize ELO from chess rankings or FiveThirtyEight’s sports prediction models. These ratings can be used to directly estimate the probability of winning a match between two individuals or teams. The ratings change after each match, rewarding a win by an underdog more than a win by the favorite.

On a stolen-base attempt, the runner, pitcher, and catcher all play a major role in the outcome of the play. An argument could also be made for the importance of the fielder receiving the throw, especially when considering the select few who can make tags like this: Read the rest of this entry »


Examining Mike Trout’s Perfect Swing

Sir Isaac Newton’s second law of gravity tells us exactly how much an object will accelerate based on the given net force.

For baseball hitters, this is directly applicable considering the goal to hit baseballs as hard and far as possible. And when it comes to generating net force against baseballs, Mike Trout is an expert. He has been crushing baseballs with the league’s elite since he became a full-time regular at age 20 in 2012. Trout’s offensive production, in particular, has gone to another level over the course of his career. The following table breaks up his career into two distinct parts. The numbers show Trout’s production compared to league average, with a mark of 100 denoting exactly average.

A Tale of Two Trouts
Years wRC+ BB%+ K%+ Pull%+ Cntr%+ Oppo%+ FB%+ GB%+
2011-15 170 159 115 93 100 112 110 89
2016-19 180 222 91 100 102 98 121 78

Trout has always produced elite offensive numbers, but he’s at an entirely different level now. He has transformed into baseball’s best hitter by walking more, striking out less, and pulling more hard-hit baseballs in the air. Trout is both barreling up more baseballs and raising the launch angle of his batted balls. Unsurprisingly, he had baseball’s second-best sweet-spot percentage in 2019. Trout has talked about a gap-to-gap approach in the past but recent trends show him moving away from hitting balls the other way. Read the rest of this entry »


2021 Arbitration Preview: Lucas Giolito – Chicago White Sox

With the 2020 Major League Baseball season on hiatus due to the Coronavirus, one can’t help but wonder of a season that could have been. Do the Nationals, after losing slugger Anthony Rendon to the Angels, have what it takes to repeat as World Series champs? Can Pete Alonso be this season’s home run champion again? Will Trout win another MVP?

Hopefully we will know sooner rather than later. In the meantime, I took the liberty of looking at players who will become first-time arbitration eligible following the 2020 season, focusing on Lucas Giolito of the Chicago White Sox.

Rather than conduct an analysis based off of career numbers (excluding the vacant 2020 season), I utilized The BAT Projection System by Derek Carty, which is part of FanGraphs, to fill in the gap for 2020 season statistics.

The BAT is a standard projection system that predicts outcomes in accordance with basic factors such as hitter and pitcher, park quality, umpires, weather factors, and more. Read the rest of this entry »


Reframing Catcher Pop Time Grades Using Statcast Data

With the advent of Statcast, statistics like exit velocity, spin rate, and launch angle have become easily accessible to baseball fans. Catcher pop time data has also become available. However, unlike some of the other Statcast metrics, catcher pop time data has existed for much longer, with scouts measuring pop times in the minor leagues years before Statcast entered the mix.

This sounds all well and dandy, right? Well, it would be, if the Statcast numbers were consistent with scouting pop time tool grades. Baseball Prospectus, for example, calls a pop time from 1.7-1.8 a 70 pop time, which sounds reasonable enough without any context. However, considering the best average Statcast pop time to second base from 2015 to 2019 was JT Realmuto’s 1.88 (minimum 10 throws to second), something seems amiss here. I decided to take a deeper look into Statcast’s pop time data to get a better idea of what’s going on.

Read the rest of this entry »


How Brad Brach Re-Found Success With the Mets

Back in February, Justin Toscano wrote that when the Mets acquired reliever Brad Brach last August, the team asked Brach to do the one thing he couldn’t do with the Cubs in the first half of the season: throw his cutter.

The 6-foot-6, 33-year-old right-hander was designated for assignment by Chicago after signing a $1.65 million deal with the team during the 2018–19 offseason. Brach posted a 6.13 ERA in just 39.2 innings across 42 games for the Cubs in 2019.

After having spent most of the second half of 2019 with the Mets, Brach re-signed with the team on a $850,000 deal, with a player option for 2021, that can increase to $1.25 million with incentives.

From March 27 through August 10 of 2019, among 197 relief pitchers with at least 30 innings pitched during that time frame, Brach ranked 123rd in the league in GB% (41.1%), 70th in K/9 (10.21), 193rd in BB/9 (6.35), and 97th in FIP (4.12). Suffice it to say, Brach was not the most productive pitcher for the Cubs, thus justifying his being DFA’d from the team in the middle of the year.

When analyzing Brach’s career numbers, however, it is clear that his time with the Cubs is not indicative of his overall arc. From 2011–18 with the San Diego Padres and Baltimore Orioles (and half a season with the Braves), Brach pitched to a 3.08 ERA (132 ERA+), a 3.68 FIP, and a 9.6 K/9 in 456 IP.

Prior to 2019, Brach only recorded an ERA over 4.00 once (5.14 in seven innings in 2011 — his first year in the league) and has never allowed more than 28 earned runs in a season. Moreover, since 2013, Brach has posted an ERA+ over 100 in every year but 2019, including a 210 ERA+ in his All-Star 2016 campaign for Baltimore. Read the rest of this entry »


Turning Quarterbacks Into Pitchers

Why don’t teams ever sign former quarterbacks to try and turn them into pitchers?

This thought stems from watching Patrick Mahomes and his pre-draft NFL tape and discovering that his father was a former major league pitcher. Can a quarterback’s arm strength transfer to pitching? What can be learned from football velocity to uncover a future successful pitcher?

ESPN was ramping up their coverage in the weeks leading up to the 2017 NFL Draft, and Mahomes was gaining momentum. A SportsCenter interview with the future MVP explored his multi-sport background, which caught my attention.

I was vaguely familiar with the story about Mahomes’ father reaching MLB as a pitcher. Apparently there was a time when Mahomes considered following in his father’s baseball footsteps. The interview spilled over into the prospect’s appearance in the Gruden QB Camp. He mentioned then that he was drafted by the Detroit Tigers in high school, but due to a strong desire to play quarterback at Texas Tech, he went in the 37th round. If his football passion wasn’t as strong, scouts told him that the top three rounds were a likely landing spot.

As the video continued, it featured highlights of in-game play and practices where Mahomes showed a dynamic skill set. He had special throwing abilities, and his baseball background and natural talent was obvious in just a few of his tosses. There were impressive clips of him throwing a football from his knees about 50 or so yards, and another highlighting a final pregame warmup toss and ritual: throwing the ball about 75-80 yards in the air. Read the rest of this entry »