*[Note: Updated 1/1/18 due to changes in approach to pitcher batting, which instead of using seasonal data to generate a seasonal estimate based on often tiny numbers of PA now uses career batting rates to increase the sample.]*

*[Note: Updated more regarding pitcher batting on 1/20/18.]*

How good was Satchel Paige? Was he really the best pitcher in Negro Leagues history? If his career had occurred in the majors, how would he compare to Walter Johnson? Was he more like Lefty Grove? Or did his career instead more closely resemble Ted Lyons’? These are rhetorical questions. We can never know with certainty just how great Satch was because he didn’t pitch in the majors during his prime. At the same time, this question is very much not a rhetorical question. With the breadth and depth of data we now have at our fingertips, we can craft a defensible and reasonable answer to these questions. Today, we’re going to show you our, admittedly imperfect, process for doing it here at the Hall of Miller and Eric.

Now, we need to warn you that this post is going to be absolutely saturated in details and technical process writing. It is not for the vainglorious. It’s not that the ideas are hard, but rather there’s enough minutia in implementing that the faint of heart may find themselves passed out in a statistical stupor.

We’ll try our best to keep it at least mildly interesting.

Creating Major League Equivalencies (MLEs) for Negro League Pitchers bears a distant familiar resemblance to what Dan Szymborski, a national treasure for baseball fans, does with ZiPS for minor leaguers. The idea originally arose in the 1985 Bill James Baseball Abstract, in an essay that represents one of James most important findings: namely that minor league performance does, in fact, predict major league performance, once we adjust for contexts such as park, league scoring levels, and the difference in quality of play between different minor league levels and the majors. Our Negro Leagues MLEs don’t follow Bill’s or Dan’s methods, but they are very much related and dependent on ideas created much earlier in the chronology of baseball analysis. Additionally, our work leans heavily on work at the Hall of Merit, especially by posters Chris Cobb and Brent who did extensive MLE work for Negro Leagues players during the HOM’s lengthy proceedings.

**Before we get going, let****’****s define our terms**

This is just going to go down easier if we use the same lingo. And since I can’t hear you to agree to a particular jargon, you’ll just have to use mine. These terms will pop up a lot.

*Originating League/Team*: The team he actually played for*Destination League*: The league we are translating his stats into and creating an equivalency for*Quality of Play*(QOP): Which assumes that MLB is 1.0, and everything else is discounted from it*Translated*: Stats that been transformed from the originating league into the destination league’s run and league-quality context; an intermediate step en route to the fuller equivalent performance*Equivalent:*Stats whose basis is in translated figures but that include further adjustments to place the player into a broader MLB context and ensure that small samples don’t overly skew the results.

There’ll be the usual alphabet soup along the way, and we’ll define the acronyms as we go.

Glad that’s over with.

**The Process…in Prose**

We’re going into gory details later, but for now, let’s look at the process in plain English.

**Translating actual performance**

First order of business: figure out how a pitcher’s performance in the originating would look in the destination league!

1) Determine the pitcher’s performance in his originating league.

2) Compare that performance to the originating league’s typical pitcher.

3) Place that relative performance into an MLB context.

4) Adjust the pitcher’s performance based on the quality of the originating league versus the destination league.

At this point, you have the pitcher’s actual performance, in his actual playing time, transformed to an MLB performance in that same playing time. Now we adjust for his team-based contexts.

5) If available, adjust for the pitcher’s strength of opposition. This would be equivalent to BBREF’s RA9opp.

6) If available, adjust for the pitcher’s defensive support. This would be equivalent to BBREF’s RA9def.

7) Adjust for the pitcher’s home park.

Now we’ve adjusted for nearly every context likely to influence a pitcher’s performance in a meaningful and/or measureable way. So now we start the process of fully re-contextualizing into MLB.

**Playing time**

If you want to know where the “human element” comes in, welcome to playing time. Unlike with hitters’ plate appearances, where teams have a strong tendency to stick with their original lineup during a game, pitchers’ innings are more elective and more variable. That is, the team decides how long to let him go during the game. Also, we know that in the Negro Leagues some pitchers were used very differently than in the majors. In barnstorming situations, a team’s best pitcher might pitch several times a week but go only three innings. That way the team could advertise their star, get a good draw, and save wear and tear on their arms. It’s not as clear that this occurred in league play, but we do hear quite a bit in the lore about how teams might hold out their best hurlers for big-gate weekend series—Sunday pitchers. Innings in the player’s originating league, therefore, are a bit sketchy as a primary flexion point for addressing the playing time issue.

We’ve opted instead to make Games Started a hinge on which our innings estimates swing. Because each Negro Leagues team didn’t always play the same length of schedule, we also have to make usage at the team level our key point of comparison, at least initially. What we’re going to do is use that information to create an initial innings estimate for each season.

8) Find how the pitcher ranked on his originating team in Games Started. We’ll call this his “slot.”

9) Assign innings based on that season’s MLB average for starters in that same “slot” if the pitcher is in slot 1 to 5. If he’s not, just assign him the innings he actually pitched that season.

If the average #2 starter threw 275 innings in 1932, that’s how many innings we’ll initially allocate for 1932 to a Negro Leaguer who was the #2 man on his staff in games started. This approach has the effect of “dollar-cost-averaging” a pitcher’s workload. These equivalencies will never indicate a league-leading workload. They are designed not to because: pitching. But over time, we’ll get pretty close because we also raise the floor a bit too.

Now we can create an initial estimate of his performance in an MLB context, with an MLB workload:

10) Create an equivalent performance level via a weighted average that includes the season in question and the translated performances of surrounding seasons.

11) Apply that equivalent performance to the innings assigned in step 6.

You might wonder why we do Step 10. We want to increase the sample we’re drawing from. Because Negro Leagues pitchers threw one-quarter to one-half the innings of their MLB counterparts (and sometimes less), we want to be sure that we aren’t allowing fluke seasons (good or bad) to overly influence our results.

We have just created an initial estimate of the player’s workload and performance for a given season. Next we tune up our initial workload estimate to reflect a realistic MLB career path as best we are able.

12) Look in the pitcher’s biographical notes for anything that might have caused him to miss games or for his workload to be underreported and fix accordingly.

13) Compare our workload estimates for very young or old seasons to the workloads of actual major league pitchers from the player’s era. Adjust accordingly.

14) Adjust our pitcher’s “slot” given the new information and move his slot up or down.

15) Check against real careers to see if the sum of career innings is out of whack with real MLB pitchers. It should be decently close by now.

**On the WAR Path**

Now we’re on the BBREF expressway to WAR.

16) Find the pitcher’s MLE Runs Above Average (RAA).

17) Convert those RAA to Wins Above Average (WAA).

18) Figure the pitcher’s replacement runs (Rrep) and replacement wins.

19) Finally, add WAA to the replacement wins to get the final equivalent pitching WAR total.

**Pitcher Batting and Total WAR**

Finally, we need to also create a hitting estimate for the hurler. We’re going to do this somewhat differently from a position player. For one thing, we aren’t going to worry about baserunning or DP avoidance. Pitchers bat little enough that this stuff doesn’t matter enough to get into. Also, fielding is axiomatically included in their run prevention performance, so no fielding necessary. So it’s just batting runs. Rather than run them through the complicated process we have for regular hitters, we’re going to take a shortcut. In doing so, we will assume they only play pitcher.

20) Estimate the number of plate appearances (PAs) they would accumulate in the games they pitched.

21) Figure their offensive performance by converting their career OPS+ to Batting Runs Above Average (Rbat) per PA. *[updated 1/1/18]*

22) Apply that Rbat/PA to our estimated PAs to get his equivalent Rbat.

23) Follow BBREF’s instructions for figuring the pitcher’s batting Positional Runs (Rpos).

24) Combine Rbat and Rpos to get batting RAA.

25) Calculate batting WAR (we can skip WAA because BBREF sets replacement level for pitcher-batters so that the average pitcher is a replacement-level hitter).

25a) Reduce #25 by 35% to account for the differences in pitcher batting between MLB and the Negro Leagues

26) Add our pitching WAR estimate from step 19 to our batting WAR estimate in step 25 to get the pitcher’s total WAR contribution for the season.

That’s it! [Snort, snort.]

Now, all this may look quite daunting, after all it’s 26 steps. And it only gets more complicated in practice. But if you’re an Excel user, and you know how to write LOOKUPs, SUMIFs, and other formulas, then your computer will do the vast majority of the work for you. Once you’ve got some experience and a lot of league and team data in the bank, the typical pitcher requires one to three hours’ time to create an MLE.

## A real example: Satchel Paige, 1942

Now, we’ll run through this with Satchel Paige’s 1942 season. This will reveal some nitty gritty details about what performance measures we use, and how we place players into an MLB run-context. I’ve only given you a framework, but you can use any old measurements or transformations you want to.

**SATCHEL PAIGE, 1942
**Originating league: Negro American League (NAL)

Originating team: Kansas City Monarchs

Destination league: 1942 AL

We choose to use the AL with Satch because he spent his entire MLB career there.

**1) Determine the pitcher****’****s performance in his originating league.**

Satch threw 72.33 frames and gave up just 23 runs for a 2.86 runs per nine innings (RA9) (NOTE: I’m not going to carry the extra decimals, so there may be a couple instances of rounding error).

**2) Compare that performance to the originating league’s typical pitcher.**

NAL pitchers gave up 4.95 RA9, which means Paige was 16.8 runs better than the league.

**3) Place that relative performance into an MLB context.**

We need a transformation that will take care of two things: the destination league’s run environment and the originating league’s standard deviation. Fortunately, z-scores do both. The Negro Leagues *usually* had a wider variance in performance than MLB, in large part due to shorter schedules. Z-scores will shrink those down to MLB size. But also, by definition, z-scores will re-center the pitcher on the destination league’s mean pitching performance. That means that instead of making some kind of run-context adjustment, we kill two birds with one stone. At this juncture, I also tell you that I’m not a trained statistician.

Anyway, I like to use RAA/IP for this purpose. Satch was at 0.23 RAA /IP in the 1942 NAL. It turns out that when you take the average of the averages of any given league, the RAA/IP is usually slightly negative, and so 0.23 – the NAL average -0.14 = 0.37. Divide that by the 1942 NAL’s STDEV, which was 0.50, and Paige comes out at 0.75 standard deviations above the NAL. Putting that performance into the 1942 AL, his 0.75 standard deviations * the AL’s 0.40 standard deviation = 0.30, which added to the AL mean of -.10 yields .20 RAA/IP.

**4) Adjust the pitcher’s performance based on the quality of the originating league versus the destination league.**

I’m rating the NAL of the 1930s and 1940s as equivalent to a AAA league, or a 20% QoP discount from MLB on runs created or allowed. Therefore: 0.80 QoP discount * Satch’s 0.20 RAA/IP from step 3 = 0.16 RAA/IP. (If a pitcher’s z-score-based RAA/IP is negative, we divide by the quality factor rather than multiply). In Paige’s own workload of 72.33 innings, we estimate that in MLB, he’d give up 11.5 fewer runs than the average pitcher. At this point, it is useful to flip the RAA/IP back into RA9, and Satch is at 2.90 (the AL was 4.30).

**5) If available, adjust for the pitcher****’****s strength of opposition. This would be equivalent to BBREF****’****s RA9opp.**

If this information should become available, we will do it. For now, everyone’s SOS is 1.0, so Paige is still at 2.90.

**6) If available, adjust for the pitcher****’****s defensive support. This would be equivalent to BBREF****’****s RA9def adjustment.**

We’ll do the same thing BBREF does, but we’ll use the Defensive Regression Analysis (DRA) values in the Negro Leagues database instead of Rfield (BBREF’s fielding runs above average). We first figure the pitcher’s Balls in Play (BIP) and determine his percentage of the team’s total BIP (tmBIP). Then we multiply that percentage rate times the team’s total DRA, which we assign to the pitcher’s innings and express per nine innings:

( ( ( BIP / tmBIP ) * tmDRA ) / IP ) * 9

But in reviewing team defense in the Negro Leagues versus MLB, it quickly becomes apparent that the smaller samples of Negro Leagues seasons require us to tamp down the fielding numbers a bit. So we’ll take that at half strength. In addition, I did a little noodling on BBREF, and it turns out that in only 40 team-seasons since 1901 has a pitching staff had a RA9def over 0.50, and in only 59 other team-seasons since 1901 has a staff had a RA9def below 0.50. Therefore, we’re also capping RA9def at +/-0.50 for MLE purposes.

Paige’s Monarchs’ 1942 defensive performance isn’t known, but if it were, we’d use the formula above.

We’re going to roll the park and defense adjustments up into one item in the next step.

**7) Adjust for the pitcher****’****s home park.**

We don’t yet have park factors for most Negro Leagues or minor league teams. So we’re going to do a little home cooking. According to a well-placed source with knowledge of how to do this effectively, we can use the following method, which, we have to apply to both hitters and pitchers due to lack of home/road RS/RA figures. I don’t swear it’s the best method, but until such time as the research community can give us PFs, this is pretty good, especially where the Negro Leagues had some very extreme parks.

YEAR ONE

Step A, find ratio of team’s R/G to league’s R/G: ( ( tmRS + tmRA ) / tmG ) / ( ( lgRS + lgRA ) / lgG )

Step B, calculate a corrective that recenters the factor due to the team in question’s own influence on Step A: ( #teams in league / ( #teams in league – 1 ) ) + Step A

Step C, apply corrective to Step A: Step A * Step B

Step D, “regress” to avoid overdoing it: ( .75 + ( .25 * Step C )

If the team doesn’t change parks, we use two and three-year park factors as appropriate. We follow the same procedure to find each season’s one-year park factor. For season two, our “regressed” factor is a little different:

( .50 * current year PF ) + ( .25 * previous year PF) + .25

Then for year three, the formula is below. Note that the .17 below is rounded, it’s .16 repeating, of course, because we’re dividing half the PF by three.

( .50 * current year PF ) + ( .17 * previous year PF ) + ( .17 * two years ago PF ) + .17

I’ll skip all the equations and tell you that the Monarchs PF for 1942 by this method is 1.07. When we apply the park factor, we need to so at half strength to account for playing only half of one’s games at home.

So now we’re going to follow BBREF’s method for applying these. They adjust *the league average pitcher*, not the pitcher in question, to account for these contexts, using the RA9opp we mentioned earlier as the basis. We’ll do the same with the 1942 AL’s RA9opp from Step 5.

( 4.30 RA9opp – .00 RA9def ) * ( ( ( 1.07 PF – 1 ) / 2 ) + 1 ) = 4.45 RA9

Now, Paige is 12.3 runs better than the AL. We’re going to need to switch back to RAA/IP soon, and his equivalent rate is 0.17 RAA/IP in the 1942 AL.

**8) Find how the pitcher ranked on his originating team in Games Started. We’ll call this his “slot.”**

In 1942, Paige ranked 1^{st} on his team in starts, and Satch was number one in several surrounding seasons. By this point in an MLB career, he would be an established #1. That’s how we’re going to proceed. Like I said, the human element.

**9) Assign innings based on that season’s MLB average for starters in that same “slot” if the pitcher is in slot 1 to 5. If he’s not, just assign him the innings he actually pitched that season.**

The median MLB #1 starter in 1942 tossed 253 innings. That’s our initial estimate.

**10) Create an equivalent performance level via a weighted average that includes the season in question and the translated performances of surrounding seasons.**

We use formula that looks like this:

( .60 * year n RAA/IP ) + ( .15 * year n+1 ) + ( .15 * year n-1 ) + ( .05 * year n+2 ) + ( .05 * year n-2 )

For seasons where we have no data, we use the player’s known career RAA/IP. That career figure only includes those seasons that we will ultimately include in our MLE (and there’s no guarantee that all seasons will be included). We also do not include seasons that don’t make the final cut in our rolling weighted average. We wouldn’t do that for an MLB player, after all.

For Paige, this turns out to look like this:

( .60 * .17 ) + ( .15 * .03 ) + ( .15 * .07 ) + ( .05 * .30 ) + ( .05 * .17 ) = .14 RAA/IP

**11) Apply that equivalent performance to the innings assigned in step 6.**

253 IP * .14 RAA/IP = 36 RAA

There’s one catch here. Sometimes due to small samples or general strangeness, a pitcher’s RA9 may come in well under the RA9 of the qualified league leader in his destination league. If that’s the case, we do a manual override. Instead of using the MLE RA9 we’ve just calculated, we multiply the league-leading RA9 by 1.1. This is a conservative move designed to keep the MLE within the realistic bounds of the destination league.

**12) Look in the pitcher’s biographical notes for anything that might have caused him to miss games or for his workload to be under-reported and fix accordingly.**

There’s nothing for Paige in 1942. In other seasons, however, there are such incidents. He was severely injured in late 1938, for example, and didn’t pitch for almost all of 1939, though the arm came back very, very late in the year. Things like that.

**13) Compare our workload estimates for very young or old seasons to the workloads of actual major league pitchers from the player’s era. Adjust accordingly.**

This doesn’t apply to 1942 for Satch because even though he was long in the tooth, he was pitching in MLB until age 46. But my own research indicates that pitchers can last a little longer than hitters, but most fellows are cooked by their late 30s with innings declining by 20 to 40% annually beginning at age 39. Only really excellent pitchers last into their 40s. Or Jamie Moyer.

**14) Adjust our pitcher’s “slot” given the new information and move his slot up or down.**

No change here.

**15) Check against real careers to see if the sum of career innings is out of whack with real MLB pitchers. It should be decently close by now.**

Now, I can tell you at this point, that Satchel Paige is a very, very special pitcher. He was pitching in the majors, effectively, deep into his 40s. Taking all of the seasons I’ve worked up, I’ve got him at 4,855 innings. Between 1893 (when the mound moved to its current position) and 1960 (just before expansion and just after Pumpsie Green finally debuted for Boston), that total would place 4^{th}:

- Cy Young: 6331.67
- Walter Johnson: 5914.33
- Pete Alexander: 5190
*Satchel Paige: 4825*- Christy Mathewson: 4788.67
- Eddie Plank: 4495.67
- Eppa Rixey: 4494.67
- Jack Powell: 4389
- Red Ruffing: 4344
- Early Wynn: 4230 (ended up at 4564)
- Burleigh Grimes: 4180

We’ll discuss the feasibility of that innings total in a subsequent post, but it’s not at all unreasonable given his ability and the norms of the day for a long-career pitcher with his results.

**16) Find the pitcher****’****s MLE RAA.**

If we’ve made any changes to our innings allotments, we’ll need to update the MLE RAA we generated in Step 11. But we haven’t. Although, I will say that I like to round off seasonal innings to the nearest ten. It’s a lot easier for you, dear reader, and I, your trusty MLE man, to rapidly comprehend a series of innings that reads 230, 270, 250 than one that reads 234, 267, 252. Trust me that when you are scanning down a list of innings, you’ll appreciate it. Also, it doesn’t really affect the results much at all. In this case, Satchel is rounded down to 250 innings, which at 0.14 RAA/IP gives him 35 RAA.

**17) Convert those RAA to wins above average (WAA).**

We follow BBREF’s instructions here. Best of luck. We get 4.0 WAA for Paige. BBREF generally defines All-Star performance as 5.0 WAR over a full season of play. Since Paige gets to 4.0 just in terms of his performance versus average, not yet counting replacement, we are estimating 1942 as at least an All-Star type year.

**18) Figure the pitcher’s replacement runs (Rrep) and replacement wins.**

According to BBREF, the calculation, using the info we have, for replacement runs looks like this:

( lgRA9 / 27 * ( ( 20.5 – 1.8 ) / 100 ) ) * ( MLE IP * 3 )

For Satch the equation is

( 4.30 / 27 * ( ( 20.5 – 1.8 ) / 100 ) ) * ( 250 * 3 ) = 22 Rrep

Once again see here for converting runs to wins, which enables to figure Paige at 2.5 replacement wins.

**19) Finally, add WAA to the replacement wins to get the final equivalent pitching WAR total. **

4.0 WAA + 2.5 replacement wins = 6.5 WAR, a strong season. That would typically be an All-Star campaign and in some seasons could draw Cy Young votes or even lead the league. From 1928, Paige’s rookie season, to 1953, where we draw the retirement line for him in our MLE, 6.3–6.7 pitching WAR was enough to lead the league in the 1940 NL, the 1941 NL, the 1943 AL, the 1948 AL, the 1949 AL, and the 1953 AL. In 11 other instances, even lower totals led a major league during that time. For example, Tex Hughson’s league leading 1942 total of 6.2 in the 1942 AL.

When we do this for all his seasons, we get 119.8 WAR for Paige’s career. That’s pretty great.

Now onto his hitting.

**20) Estimate the number of PAs they would accumulate in the games they pitched.**

OK, we’re kind of fudging this one, but logically, this little formula does the job:

( 8 / 3 ) * ( IP / 8 )

It basically assumes that an MLB pitcher in the Negro-Leagues era gets 3 plate appearances every eight innings. Every season from 1893 onward has a per-game average of at least 36 PAs per team. But pitchers either don’t always go all the way, and they are often pinch hit for the third or fourth time through the lineup. On the other hand, pitchers went a lot longer back in the Negro Leagues era. So, we figure that a typical starting pitcher would likely hit three times, and be pinch hit for in the eighth. On average. If not, that’s fine. The difference is minimal enough that we’re not going to split the hairs too finely. For Satch:

( 8 / 3 ) * 250 / 8 = 83 PA (rounded to the whole, of course)

**21) Figure their offensive performance by converting their OPS+ to Rbat/PA.**

OK, I found every pitcher from 1890 to 1960 who batted 300 or more times in their career, and I put their OPS+ on the x-axis of a scatter plot and their Rbat/PA on the y-axis. The resulting regression equation (very strong r-squared of .92, as it should be) is

y = 0.0013x – 0.1307

We apply it to the pitcher’s quality-of-play-adjusted and park-adjusted career OPS+ this way:

( 0.0013 * OPS+ ) – 0.1307

Here’s 1942, for Paige. His career OPS+, adjusted for QOP and park was 32 (rounded)

( 0.0013 * 30 OPS+ ) – 0.1307 = -0.0917 Rbat/PA

**22) Apply that Rbat/PA to the our estimated PAs to get his equivalent Rbat.**

-0.0917 * 83 = -7.3

**23) Follow BBREF****’****s instructions for figuring pitcher****’****s batting Rpos**.

This boils down to

( ( PA / 4 ) * seasonal pitcher-batting adjustment ) / 150

That seasonal positional adjustment is located here.

For Satchel we get

93 / 4 * 59.2 / 150 = 8.2

**24) Combine Rbat and Rpos to get batting RAA.**

-7.3 + 8.2 = 0.8

**25) Use BBREF****’****s runs-to-wins instructions to create WAR (we can skip WAA because BBREF sets replacement level for pitcher-batters so that the average pitcher is a replacement-level hitter).**

We get 0.1 batting WAR from this procedure for 1942. For his career, our MLE version of Paige was worth 2.4 batting WAR.

**25a) Reduce #25 by 35% to account for the differences in pitcher batting between MLB and the Negro Leagues**

We took the top 200 hitting pitchers by OPS+ from among the 1,266 pitchers with >=100 PA from MLB 1871 to 1960 and a similar percentage from the 190 in the Negro Leagues. When we compared the groups, the average high-batting-performance Negro Leagues pitcher clocked in at roughly 35% higher than their MLB counterparts. We don’t want to turn an above-average hitting pitcher into a poor one, so we’ll adjust them toward average. For Paige that means

0.09 * 0.65 = 0.059

Yeah, still rounds to 0.1 batting WAR. Over the course of his career, his 2.4 batting WAR would be reduced to 1.59. Not a big deal for him. For others, it’s a far bigger deal. Smokey Joe Williams, for example, loses about 4.5 Wins.

**26) Add our pitching WAR estimate from step 19 to our batting WAR estimate in step 25 to get the pitcher****’****s total WAR contribution for the season.**

6.5 pitching WAR + 0.1 batting WAR = 6.6 total WAR

[It’s actually 6.54, but we irresponsibly lost some information due to rounding.]

When we do this entire procedure for all of his seasons (sometimes having to make some judgment calls when data are missing), we get 121.4 WAR.

Taken all together, this puts Satchel Paige behind Walter Johnson and Cy Young and right on the heels of Pete Alexander in WAR. It’s certainly possible that we’re giving him too much credit—that we’ve got some horrible mathematical or logical problem in our routine. We could also have badly inputted formulae because it ain’t as easy as copy/paste in every instance. But on the whole, we are estimating that Satchel Paige is one of the best pitchers ever to take a mound whether in MLB or not. We’ll show you his entire career MLEs in a subsequent post. They represent a holy-moly pitcher.

What you shouldn’t do is take our word for holy gospel. Especially not on a season-by season basis. There’s enough missing data for virtually all these players or small samples at the seasonal level that we need to think of the totality of the career first and the shape of it or its component seasons second. With so many moving parts, we can’t guarantee that any single season is “accurate” or “correct” in the literal sense. Only that we’ve got a protocol that appears to work pretty well in testing among pitchers of varying quality in the Negro Leagues. We hope that you will agree that at the very least, we’re being thorough.

Please let us know if you have any suggestions for improvement. We aren’t all that mathy by training, more like logical. But we are prone to human error, and the process that got us this far is incredibly iterative. Mostly, though, we hope you enjoy the players we’ll present and the dreams of an integrated game that they represent, as well as the outstanding play that lies behind these estimates of greatness.

Next up the first four of our Hall of Fame/Merit pitchers: Ray Brown, Andy Cooper, Leon Day, and Martín Dihigo.

I presume that you will have additional adjustments for guys like DiHigo who played in the field when not pitching.

This all sounds promising. Good luck

v

Keep the awesome work chugging, thanks again Eric!