DataBaseball
2026
Bryan LaHair headshot

Players · L · 1B · 2012 regular season

Bryan LaHair

Age
30
B/T
L/R
Height
6' 5"
Weight
245 lb
Number
#6
Born
November 5, 1982 in Worcester, MA, United States
MLB debut
July 18, 2008

Compare with…

dbWAR
1.5
Regular season, 3 season(s)
PA
380
AVG
.259
OBP
.334
SLG
.450
wRC+
116
100 = avg

Bryan LaHair was a first baseman for the Chicago Cubs. In 2012 he hit 16 home runs and knocked in 40 RBIs, notching 88 hits across 380 plate appearances in 127 games. His batting average was .259, 1.7% higher than the league average of .255. He reached base at a .334 clip and slugged .450, for an OPS of .784, 8.3% higher than the league mark of .724 — the third best on his team, and 118th of 459 among MLB batters with 100+ plate appearances. He made contact on 70.6% of his swings. Adjusted for his ballpark and league, his 116 wRC+ puts his offence 16% above average. That comes to 1.3 dbWAR — +7.4 runs with the bat, -0.1 for the ballpark, -0.4 on the bases, +0.1 on double plays, -5.0 for the position he plays, against replacement level. It includes no fielding: defensive runs are proprietary and are not estimated here, so the figure credits playing a demanding position but not playing it well.

League context

Percentile among qualified batters, 2012 regular season.

wRC+116
wOBA.344
ISO.191
BB%10.3%
WAR1.3

How the WAR is built

Runs above replacement, 2012. These terms sum to +12.3 runs, divided by runs-per-win to give WAR. There is no fielding term.

Batting+7.4Ballpark-0.1Baserunning-0.4Double plays+0.1Position-5.0Replacement+10.4
BattingBallparkBaserunningDouble playsPositionReplacement

WAR by season

1.30.5-0.3081112

Batting Regular season

Standard and advanced, by season. Regular-season games only.

Trend
2012CHC127380881640439124.259.334.450.191.35810.3%32.6%.344+7.41161.3
2011CHC196917260918.288.377.508.220.37513.0%26.1%.390+3.71500.5
2008SEA451503431001340.250.315.346.096.3338.7%26.7%.299-4.279-0.3

Platoon splits

How he hits left- and right-handed pitching.

Batting by the hand the pitcher throws with, 2012. Counted from play-by-play, so totals can differ from the box-score season line by a plate appearance or two.
SplitPAABHHRBBSOAVGOBPSLGwOBAK%
vs LHP544831627.063.167.125.15050.0%
vs RHP32629285153397.291.362.503.37629.8%

Spray chart

Where every ball he put in play landed, 2012.

Loading 207 batted balls…

Hot and cold zones

Batting average by pitch location, 2012.

.250—.351.163.00012 AB.35317 AB.10010 AB.18222 AB.31029 AB.29224 AB.35334 AB.24233 AB.15020 AB
Below averageLeague averageAbove average
Batting average by location of the pitch that ended each plate appearance, catcher's view. The bordered square is the strike zone; the outer band is chase territory. Cells with fewer than 8 at-bats are left grey rather than shown as signal. League average on the same attribution is .254.

Situational hitting

How Bryan LaHair hits by base state, outs, score and late-game pressure — each read against his own season line.

Split by
By who is on base when he comes up. The season line is repeated as the baseline.
SituationPAABHHRRBIBBSOAVGOBPSLGwOBA
All situations380——————.259.334.450.344
Bases empty2141935511112170.285.355.503.376
Runner on first726921410326.304.333.580.395
Runners on166147335291854.224.307.381.301
RISP9478121191528.154.287.205.227

Runners on includes runners in scoring position, which is the convention every reference uses. Counted from play-by-play, 2012.

Not in the 2012 data: exit velocity and launch angle, first recorded in 2015. The play-by-play goes back to 2005, but the measurements on each pitch and batted ball arrived later, so the panels built from them are left off this season.

Compare Bryan LaHair with…

Side by side with up to three others.

Compare with… add up to 3 more players
Bryan LaHair

Similar players

Nearest 2012 seasons by discipline, contact, power and speed, on rate statistics rather than totals.

How these are computed

wOBA uses linear weights measured from this season's own play-by-play rather than published constants, and wRC+ is park-adjusted against that same league. dbWAR is our own open implementation — not fWAR or bWAR — and the full derivation, including its simplifications, is on the methodology page.