Several months ago, around the time of the Cy Young Awards, I saw a debate on another website focusing on the question of who the best pitcher in baseball was. The debate primarily centered on Roy Halladay and Tim Lincecum. One thing that was continually brought up in defense of Halladay was that he'd faced much stiffer competition than Lincecum, and that needed to be taken into account. Baseball Prospectus posts OPS of batters faced on their stat pages, but I thought that there had to be something that was better, something that was more quantifiable. This analysis is the result of that thought.
I'd like to thank both Graham and Matthew up front. Graham allowed me to bounce the idea off of him and helped me start the list of caveats. He also put me in touch with Matthew, who was gracious enough to send me the data behind all pitcher/batter matchups in 2009. I'd also like to thank them publicly for StatCorner, as I used their tRA data as the basis for the pitching numbers and their wOBA data as the basis for the hitters. You guys rock.
The solution to me seems to be wOBA of batters faced. It's easily understood (well, if you're a stats nerd anyway) and incredibly easy to use in analysis. If you can get the data, it's not that hard to weight hitters' wOBA figures together to get an aggregate. I started by hand-pulling data from baseball-reference, but that was incredibly time-consuming. I got in touch with Matthew and he graciously provided the batter/pitcher data that allowed me to run this for the pitcher universe in a much easier fashion.
Once you get the wOBA figures for the average hitter that faces a given pitcher, you need the average league wOBA to convert that to a runs figure. I compiled the StatCorner data by league and got averages of .341 in the AL and .330 in the NL. For this analysis, I included pitchers' hitting stats (from what I understand, they're typically excluded from the averages that drive batting runs above average) since that's a major component of the difference between leagues. Additionally, I created a major league average wOBA.
I then calculated the bRAA of the hitters facing a given pitcher just like you would to create a hitter's batting contribution ( [wOBA - league average wOBA] / 1.15 * Plate Appearances (or in this case, Total Batters Faced)]. So if in 2009 Zack Greinke faced an average hitter with a .340 wOBA and the AL average is .341, that cumulative hitter over the number of ABs against Greinke was 1.23 runs below average. Similarly, I made the calculation substituting major league average wOBA (.335 from StatCorner) for the league-specific figure and calculated the average hitter faced by each pitcher under that scenario (the comparable Greinke figure was a +3.42 run hitter). For the record, there is roughly a 10 run spread between the pitchers who face the "worst" and "best" average hitters in each league, and roughly 20 runs from worst and best average hitters across all major league pitchers.
I then took those bRAA figures and used them to adjust tRA, which is easily done by multiplying the bRAA figure by 27, dividing by xOuts, and subtracting the results (so a pitcher that faces a below average hitter would see an upward adjustment to his tRA). Intuitively it makes sense to me that if Halladay is a +44 pitcher and the hitters he faced were +5, then he should get credit for actually being something close to +49. I do this both within leagues and across leagues, and the differences between the adjusted and unadjusted leaderboards are shown below. I limited it to pitchers with 300 of more expected outs (so approximately 100 innings pitched). Clearly there's a bit of reshuffling and the largest change is the AL/NL reshuffling on the combined leaderboard (note that you may have to open the leaderboards for full effect).
Results and Application
In general, the changes were what I expected. AL pitchers face better hitters than their NL counterparts (which makes total sense with the DH rule). Within the leagues, the pitchers in each East division faced the toughest hitters. But somewhat surprisingly, there were some relatively meaningful differences even among starters on a given team (for instance, Adam Wainwright faced a +1.2 bRAA NL hitter, while Chris Carpenter and Joel Pineiro both faced hitters around -2.5 bRAA; granted, it's not huge, but it's still almost half a win).
As far as how it gets applied, I'm still not totally sure about applying it directly to tRA (or FIP). I think the adjustment works to an extent, but there's probably some noise in there or a perhaps a good reason why we shouldn't just add pRAA to bRAA against, especially when trying to look at AL vs. NL pitchers. I also believe there's likely to be some very good information contained in rolling this up by team or even division, which could aid in projecting "next year" for a player that changes teams/divisions/leagues from one year to the next (certainly multiple years would be needed).
I have several caveats about this analysis. For one, it is heavily driven by the wOBA of hitters faced. It is possible that if, say, the AL is similarly better than the NL at both hitting and pitching that differences across leagues may not be picked up correctly. Second, I'm using but one year of data, so I'd need to run this several more times to see if 2009 is a representative year. As described above, I'm not sure if it works as an actual adjustment or if it should just be informational. I've made no effort yet to figure out next steps as far as how this may be regressed. Lastly, I'm not sure how this interacts with stats like tRA* or xFIP, as the adjustment of certain underlying batted ball figures would undoubtedly take care of some aspects of "facing better hitters" or whatever you want to call it.
So there you have some thoughts on adjusting pitching stats for the quality of batters faced. I'm very interested in what the larger group thinks about the merit of such an adjustment. What haven't I thought of? Are there other reasons that you have why it may or may not work? I'd love to hear any comments you've got, positive or negative. Thanks for taking the time to read this!