These numbers are difficult to calculate and I would refer you to a copy of Total Baseball if you wish to recreate the park factor values.

The value indicate a number above 100 is a park good for hitters and below 100 is a park good for pitchers. The ERA+ and PRO+ values are adjusted to both the league average and the park the pitcher or batter played in.

The career totals are gathered by finding what a league average player would have done given the same playing time as the player in question and then summing these values up over the player's career. Given how I store the seasonal data (as an ER total not the league ERA) it is very easy to calculate. Similarly for PRO+ (league times on base and league total bases).

Note that the lg_ERA and lg_OPS values are for a league average player in that ballpark for single season data, and for a league average player with the same career path as the given player. This means that two players from the same league will have different values here if they played in different parks.

I largely follow the method spelled out below. Historically, B-R has been using single-year park factors for recent years and 3-year park factors historically. I have changed that to now use 3-year factors by default for all years. Of course, the current season is only really a 2-year factor. The current year and last year. This can lead to some big changes in the numbers, from what had been on the site.

Two other major differences.

1) Interleague games are not used in the calculation. They really mess things up because in some games the teams have the DH and in others they don't. These series are also typically not home and home series.

2) For the years 1957 and on, I use runs per 27 outs used rather than runs per game (the IPC is always 1.00 in these cases). This is more accurate than using IPC.

Overall, these two changes make only small changes to the numbers, but I believe them to be more accurate this way.

**This information is taken from an Archived
Copy of the now defunct TotalBaseball.com website. THIS DOES NOT
BELONG TO ME AND MAY BE REMOVED IF I AM ASKED TO DO SO BY A
REPRESENTATIVE OF TOTALBASEBALL.COM.**

**PARK FACTOR **Calculated separately for batters and
pitchers. Above 100 signifies a park favorable to hitters; below 100
signifies a park favorable to pitchers. The computation of PF is
admittedly daunting, and what follows is probably of interest to the
merest handful of readers, but we feel obliged to state the
mathematical underpinnings for those few who may care. We use a
three-year average Park Factor for players and teams unless they
change home parks. Then a two-year average is used, unless the park
existed for only one year. Then a one-year mark is used. If a team
started up in Year 1, played two years in the first park, one in the
next, and three in the park after that and then stopped play, the
average would be as follows (where Fn is the one-year park factor for
year n):

Year 1 and 2 = (F1 + F2)/2 Year 4 = (F4 + F5)/2 Year 3 = F3 Year 5 = (F4 + F5 + F6)/3 Year 6 = (F5 + F6)/2

Step 1. Find games, losses, and runs scored and allowed for each team at home and on the road. Take runs per game scored and allowed at home over runs per game scored and allowed on the road. This is the initial figure, but we must make two corrections to it.

Step 2. The first correction is for innings pitched at home and on the road. This is a bit complicated, so the mathematically faint of heart may want to head back at this point. First, find the team's home winning percentage (wins at home over games at home). Do the same for road games. Calculate the Innings Pitched Corrector (IPC) shown below. If it is greater than 1, this means the innings pitched on the road are higher because the other team is batting more often in the last of the ninth. This rating is divided by the Innings Pitched Corrector, like so:

(18.5 -- Wins at home / Games at home) IPC = ----------------------------------- (18.5 -- Losses on road / Games on road)

Note: 18.5 is the average number of half-innings per game if the home team always bats in the ninth.

Step 3. Make corrections for the fact that the other road parks' total difference from the league average is offset by the park rating of the club that is being rated. Multiply rating by this Other Parks Corrector (OPC):

No. of teams OPC=---------------------------------- No. of teams - 1 + Run Factor, team

(Note that this OPC differs from that presented earlier in The Hidden Game of Baseball, for in preparing the pre-1900 data for Total Baseball, we discovered that for some parks with extreme characteristics, like Chicago's Lake Front Park of 1884, which had a Home Run Factor of nearly 5, the earlier formula produced wrong results. For parks with factors of 1.5 or less, either formula works well.)

Example. In 1982, Atlanta scored 388 runs and allowed 387 runs at home in 81 games, and scored 351 and allowed 315 on the road in 81 games. The initial factor is (775/81) / (666/81) = 1.164. The Braves' home record was 42-39, or .519, and their road record was 47-34, or .580. Thus the IPC = (18.5 - .519) / (18.5 - .420) = .995. The team rating is now 1.164/.995 = 1.170. The OPC = (12) / (12 - 1 + 1.170) = .986. The final runs-allowed rating is 1.170 X .986, or 1.154.

We warned you it wouldn't be easy!

The batter adjustment factor is composed of two parts, one the park factor and the other the fact that a batter does not have to face his own team's pitchers. The initial correction takes care of only the second factor. Start with the following (SF = Scoring Factor, previously determined [for Atlanta, 1.154], and SF1 = Scoring Factor of the other clubs [NT = number of teams]):

SF - 1 1 - ----- NT - 1

Next is an iterative process in which the initial team pitching rating is assumed to be 1, and the following factors are employed:

RHT, RAT= Runs per game scored at home (H) and away (A) by team,

OHT, OAT= Runs per game allowed at home, away, by team

RAL = Runs per game for all games in the league.

Now, with the Team Pitching Rating (TPR) = 1, we proceed to calculate Team Batting Rating (TBR):

|RAT RHT| | TPR-1| |--- + ---| |1+ -----| |SF1 SF | | NT- 1| TBR=------------------------------ RAL

|OAT OHT| | TBR-1| |--- + ---| |1+ -----| |SF1 SF | | NT- 1| TPR=------------------------------ RAL

The last two steps are repeated three more times. The final Batting Corrector, or Batters' Park Factor (BPF) is

(SF + SF1) BPF=---------------- | | TPR-1 | | |2 X |1+ -----| | | | NT-1 | |

Similarly, the final Pitching Corrector, or Pitchers' Park Factor (PPF) is

(SF + SF1) PPF=---------------- | | TBR-1 | | |2 X |1+ -----| | | | NT-1 | |

Now an example, using the 1982 Atlanta Braves once again.

388 351 RHT - --- - 4.79 RAT - --- - 4.33 81 81

387 315 OHT - --- = 4.78 OAT - --- = 3.89 81 81

7947 RAL = --- = 8.18 NT = 12 972

|1.154-1| SF = 1.154 SF1=1-|-------|=.986 | 11 |

|4.33 4.79| | 1- 1| |--- + ----| |1+ --- | |.986 1.154| | 11 | TBR=---------------------------=1.044 8.18

|3.89 4.78| | 1.044- 1| |--- + ----| |1+ --------| |.986 1.154| | 11 | TBR=---------------------------=.993 8.18

Repeating these steps gives a TBR of 1.04 and a TPR of .97. The Batters' Park Factor is

(1.170 + .986) BPF=----------------=1.07 | | 99-1 | | |2 X |1+ ----| | | | 11 | |

This is not a great deal removed from taking the original ratio,

1.170 + 1 --------- , which is 1.08 2

The Pitchers' Park Factor may be calculated in analogous fashion.

To apply the Batters' Park Factor to Batting Runs, one must use this formula:

BR uncorr. BR = ------------------------------------------------------ corr. Runs (league) Runs (league) AB+BB+HBP ------------- - ---------- X (BPF - 1) X --------- AB+BB+HBP AB+BB+HBP (player or team) (league) (league)

For example, if a player produces 20 runs above average in 700 plate appearances with a Batters' Park Factor of 1.10, and the league average of runs produced per plate appearance is .11, this means that the player's uncorrected Batting Runs is 20 over the zero point of 700 X .11 (77 runs). In other words, 77 runs is the average run contribution expected of this batter were he playing in an average home park. But because his Batters' Park Factor is 1.10, which means his home park was 10 percent kinder to hitters (than the average), you would really expect an average run production of 1.1 X 77, or 85 runs. Thus the player whose uncorrected Batting Runs is 97 with a BF of 1.1 is only +10 runs rather than +20, and 10 is his Park Adjusted Batting Runs (in the Player Register, BR/A):

10 = 20/1.10 - .11 X (1.10 - 1) X 700.