Robert Mullen
| Year | Age | Lvl / Team | PA | AVG/OBP/SLG | HR | SB | wRC+ | WAR | MLE AVG/OBP/SLG |
|---|---|---|---|---|---|---|---|---|---|
| 2016 | 20 | ROKAZL Athletics | 113 | .260/.366/.406 | 1 | 0 | 46 | — | .186/.259/.284 |
| 2018 | 22 | ABeloit Snappe… | 19 | .222/.263/.333 | 0 | 0 | 14 | — | .167/.211/.222 |
| 2019 | 23 | A+OAK | 274 | .280/.333/.460 | 10 | 0 | 63 | — | .220/.263/.357 |
Career Stats + Projections
Methodology▸ how these numbers are built
All seasons translated to park-neutral MLB-equivalent (MLE) and combined per year. 2027 = full-season projection (no games played yet). 2028+ via Advanced Marcel + aging curve. Catcher framing: only 2027 Statcast framing is modeled (Baseball Savant server-caches the leaderboard to the current season); prior-year framing is unmodeled — projections for established framers may run 1-3 WAR low.
| Year | Age | Lvl | Team | MLB% | PA | AB | H | 2B | 3B | HR | BB | SO | HBP | SB | CS | AVG | OBP | SLG | OPS | ISO | BABIP | K% | BB% | wOBA | wRC+ | BAT | RUN | FLD | POS | REP | WAR |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ▸ Career — actual stats, one row per stint (as recorded, no adjustments) | |||||||||||||||||||||||||||||||
| 2013 | 17 | ROK | DSL Athletics | — | 101 | 90 | 24 | 6 | 0 | 1 | 6 | 15 | 4 | 1 | 2 | 267 | 340 | 367 | 707 | 100 | 311 | 15 | 6 | 320 | 30 | — | — | — | — | — | — |
| 2014 | 18 | ROK | DSL Athletics | — | 193 | 152 | 35 | 10 | 0 | 0 | 28 | 29 | 6 | 6 | 1 | 230 | 371 | 296 | 667 | 66 | 278 | 15 | 15 | 308 | 30 | — | — | — | — | — | — |
| 2015 | 19 | ROK | AZL Athletics | — | 91 | 78 | 18 | 5 | 1 | 0 | 11 | 13 | 1 | 3 | 0 | 231 | 333 | 321 | 654 | 90 | 277 | 14 | 12 | 300 | 31 | — | — | — | — | — | — |
| 2016 | 20 | ROK | AZL Athletics | — | 113 | 96 | 25 | 7 | 2 | 1 | 16 | 21 | 0 | 0 | 0 | 260 | 366 | 406 | 772 | 146 | 320 | 19 | 14 | 345 | 46 | — | — | — | — | — | — |
| 2018 | 22 | A | Beloit Snappers | — | 19 | 18 | 4 | 2 | 0 | 0 | 1 | 4 | 0 | 0 | 0 | 222 | 263 | 333 | 596 | 111 | 286 | 21 | 5 | 267 | 14 | — | — | — | — | — | — |
| 2019 | 23 | A+ | Stockton Ports | — | 274 | 250 | 70 | 15 | 0 | 10 | 13 | 65 | 7 | 0 | 0 | 280 | 333 | 460 | 793 | 180 | 335 | 24 | 5 | 347 | 63 | — | — | — | — | — | — |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2013 | 17 | ROK MLE | DSL Athletics | — | 101 | 92 | 16 | 4 | 0 | 0 | 4 | 18 | 4 | 1 | 2 | 174 | 240 | 217 | 457 | 43 | 213 | 18 | 4 | 212 | 30 | — | — | — | — | — | — |
| 2014 | 18 | ROK MLE | DSL Athletics | — | 193 | 161 | 24 | 6 | 0 | 0 | 19 | 35 | 6 | 6 | 1 | 149 | 263 | 186 | 450 | 37 | 179 | 18 | 10 | 212 | 30 | — | — | — | — | — | — |
| 2015 | 19 | ROK MLE | AZL Athletics | — | 91 | 82 | 15 | 4 | 1 | 0 | 7 | 19 | 1 | 3 | 0 | 183 | 256 | 256 | 512 | 73 | 217 | 21 | 8 | 214 | 31 | — | — | — | — | — | — |
| 2016 | 20 | ROK MLE | AZL Athletics | — | 113 | 102 | 19 | 5 | 1 | 1 | 10 | 30 | 0 | 0 | 0 | 186 | 259 | 284 | 543 | 98 | 241 | 27 | 9 | 236 | 46 | — | — | — | — | — | — |
| 2018 | 22 | A MLE | Beloit Snappers | — | 19 | 18 | 3 | 1 | 0 | 0 | 1 | 5 | 0 | 0 | 0 | 167 | 211 | 222 | 433 | 56 | 226 | 26 | 5 | 189 | 14 | — | — | — | — | — | — |
| 2019 | 23 | A+ MLE | Stockton Ports | — | 274 | 255 | 56 | 11 | 0 | 8 | 8 | 87 | 7 | 0 | 0 | 220 | 263 | 357 | 620 | 137 | 278 | 32 | 3 | 262 | 63 | — | — | — | — | — | — |
| 2013 | 17 | ROK MLE | DSL Athletics | — | 101 | 92 | 16 | 4 | 0 | 0 | 4 | 18 | 4 | 1 | 2 | 174 | 240 | 217 | 457 | 43 | 216 | 18 | 4 | 212 | 30 | — | — | — | — | — | — |
| 2013 | 17 | ROK RAW | DSL Athletics | — | 101 | 90 | 24 | 6 | 0 | 1 | 6 | 15 | 4 | 1 | 2 | 267 | 340 | 367 | 707 | 100 | 311 | 15 | 6 | 320 | 30 | — | — | — | — | — | — |
| 2014 | 18 | ROK MLE | DSL Athletics | — | 193 | 161 | 24 | 6 | 0 | 0 | 19 | 35 | 6 | 6 | 1 | 149 | 263 | 186 | 450 | 37 | 186 | 18 | 10 | 212 | 30 | — | — | — | — | — | — |
| 2014 | 18 | ROK RAW | DSL Athletics | — | 193 | 152 | 35 | 10 | 0 | 0 | 28 | 29 | 6 | 6 | 1 | 230 | 371 | 296 | 667 | 66 | 278 | 15 | 15 | 308 | 30 | — | — | — | — | — | — |
| 2015 | 19 | ROK MLE | AZL Athletics | — | 91 | 82 | 15 | 4 | 1 | 0 | 7 | 19 | 1 | 3 | 0 | 183 | 256 | 256 | 512 | 73 | 238 | 21 | 8 | 214 | 31 | — | — | — | — | — | — |
| 2015 | 19 | ROK RAW | AZL Athletics | — | 91 | 78 | 18 | 5 | 1 | 0 | 11 | 13 | 1 | 3 | 0 | 231 | 333 | 321 | 654 | 90 | 277 | 14 | 12 | 300 | 31 | — | — | — | — | — | — |
| 2016 | 20 | ROK MLE | AZL Athletics | — | 113 | 102 | 19 | 5 | 1 | 1 | 10 | 30 | 0 | 0 | 0 | 186 | 259 | 284 | 543 | 98 | 250 | 27 | 9 | 236 | 46 | — | — | — | — | — | — |
| 2016 | 20 | ROK RAW | AZL Athletics | — | 113 | 96 | 25 | 7 | 2 | 1 | 16 | 21 | 0 | 0 | 0 | 260 | 366 | 406 | 772 | 146 | 320 | 19 | 14 | 345 | 46 | — | — | — | — | — | — |
| 2018 | 22 | A MLE | Beloit Snappers | — | 19 | 18 | 3 | 1 | 0 | 0 | 1 | 5 | 0 | 0 | 0 | 167 | 211 | 222 | 433 | 56 | 231 | 26 | 5 | 189 | 14 | — | — | — | — | — | — |
| 2018 | 22 | A RAW | Beloit Snappers | — | 19 | 18 | 4 | 2 | 0 | 0 | 1 | 4 | 0 | 0 | 0 | 222 | 263 | 333 | 596 | 111 | 286 | 21 | 5 | 267 | 14 | — | — | — | — | — | — |
| 2019 | 23 | A+ MLE | Stockton Ports | — | 274 | 255 | 56 | 11 | 0 | 8 | 8 | 87 | 7 | 0 | 0 | 220 | 263 | 357 | 620 | 137 | 293 | 32 | 3 | 262 | 63 | — | — | — | — | — | — |
| 2019 | 23 | A+ RAW | Stockton Ports | — | 274 | 250 | 70 | 15 | 0 | 10 | 13 | 65 | 7 | 0 | 0 | 280 | 333 | 460 | 793 | 180 | 335 | 24 | 5 | 347 | 63 | — | — | — | — | — | — |
| 2013 | 17 | ROK MLE | DSL Athletics | — | 101 | 92 | 16 | 4 | 0 | 0 | 4 | 18 | 4 | 1 | 2 | 174 | 240 | 217 | 457 | 43 | 213 | 18 | 4 | 212 | 30 | — | — | — | — | — | — |
| 2014 | 18 | ROK MLE | DSL Athletics | — | 193 | 166 | 24 | 6 | 0 | 0 | 19 | 35 | 6 | 6 | 1 | 145 | 263 | 181 | 444 | 36 | 179 | 18 | 10 | 212 | 30 | — | — | — | — | — | — |
| 2015 | 19 | ROK MLE | AZL Athletics | — | 91 | 83 | 15 | 4 | 1 | 0 | 7 | 19 | 1 | 3 | 0 | 181 | 256 | 253 | 509 | 72 | 217 | 21 | 8 | 214 | 31 | — | — | — | — | — | — |
| 2016 | 20 | ROK MLE | AZL Athletics | — | 113 | 102 | 19 | 5 | 1 | 1 | 10 | 30 | 0 | 0 | 0 | 186 | 259 | 284 | 543 | 98 | 241 | 27 | 9 | 236 | 46 | — | — | — | — | — | — |
| 2018 | 22 | A MLE | Beloit Snappers | — | 19 | 18 | 3 | 1 | 0 | 0 | 1 | 5 | 0 | 0 | 0 | 167 | 211 | 222 | 433 | 56 | 226 | 26 | 5 | 189 | 14 | — | — | — | — | — | — |
| 2019 | 23 | A+ MLE | Stockton Ports | — | 274 | 257 | 56 | 11 | 0 | 8 | 8 | 87 | 7 | 0 | 0 | 218 | 263 | 354 | 617 | 136 | 278 | 32 | 3 | 262 | 63 | — | — | — | — | — | — |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| Career | — | MLE | — | 791 | 710 | 133 | 31 | 2 | 9 | 49 | 194 | 18 | 10 | 3 | 187 | 257 | 275 | 532 | 87 | 241 | 25 | 6 | 232 | 43 | -53 | +1 | +0 | +14 | +17 | -2.2 | |
| / 162G | — | MLE | — | 650 | 583 | 109 | 25 | 2 | 7 | 40 | 159 | 15 | 8 | 2 | 187 | 257 | 273 | 530 | 86 | 241 | 24 | 6 | 232 | 43 | -44 | +1 | +0 | +12 | +14 | -1.8 | |
How the minor-league lines were translated
One row per minor-league stint. Open a row to see each step: the raw rate, the park adjustment, the league/level factor, the age adjustment (hitters) and the resulting MLE rate. Factors are the same ones listed on the MLE Factors page.
2019 A+Stockton Ports · 274 PAwOBA .342 → .262 (−80)K% 23.7% → 31.6%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 23.72% | ÷1.007 | ×1.340 | — | — | 31.56% |
| BB% (unintentional) /PA | 4.74% | ÷1.075 | ×0.710 | — | ×0.998 | 3.13% |
| HBP% /PA | 2.55% | — | ×0.790 | — | ×0.998 | 2.01% |
| Singles /BIP | 24.32% | ÷0.992 | ×0.910 | ×0.950 | ×0.998 | 21.15% |
| Doubles /BIP | 8.11% | ÷1.036 | ×0.820 | ×0.950 | ×0.998 | 6.08% |
| Triples /BIP | 0.00% | ÷0.958 | ×0.760 | ×0.950 | ×0.998 | 0.00% |
| Home runs /BIP | 5.41% | ÷1.114 | ×0.920 | — | ×0.998 | 4.46% |
Factors used: league row CAL. Park (home-season share, regressed): HR 123, 1B 98, 2B 107, 3B 92, K 101, BB 115 — applied at half strength. Age: age 23 vs a level average of 22.8 → −0.2% on BB/HBP/hit rates (0.2 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .342 → .262; ISO .180 → .135; BABIP .335 → .278. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).
2018 ABeloit Snappers · 19 PAwOBA .260 → .189 (−71)K% 21.1% → 27.4%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 21.05% | ÷1.044 | ×1.360 | — | — | 27.42% |
| BB% (unintentional) /PA | 5.26% | ÷0.969 | ×0.690 | — | — | 3.75% |
| HBP% /PA | 0.00% | — | ×0.780 | — | — | 0.00% |
| Singles /BIP | 14.29% | ÷1.068 | ×0.920 | — | — | 12.30% |
| Doubles /BIP | 14.29% | ÷1.153 | ×0.830 | — | — | 10.28% |
| Triples /BIP | 0.00% | ÷0.994 | ×0.910 | — | — | 0.00% |
| Home runs /BIP | 0.00% | ÷0.895 | ×0.800 | — | — | 0.00% |
Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 79, 1B 114, 2B 131, 3B 99, K 109, BB 94 — applied at half strength. Age: age 22 vs a level average of 22.0 → +0.0% on BB/HBP/hit rates (0.0 yr younger than average).
Result: wOBA .260 → .189; ISO .111 → .075; BABIP .286 → .226. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).
2016 ROKAZL Athletics · 113 PAwOBA .340 → .236 (−104)K% 18.6% → 26.8%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 18.58% | ÷1.000 | ×1.440 | — | — | 26.76% |
| BB% (unintentional) /PA | 14.16% | ÷1.000 | ×0.620 | — | ×0.995 | 8.73% |
| HBP% /PA | 0.00% | — | ×0.720 | — | ×0.995 | 0.00% |
| Singles /BIP | 20.00% | ÷1.000 | ×0.820 | ×0.969 | ×0.995 | 15.81% |
| Doubles /BIP | 9.33% | ÷1.000 | ×0.720 | ×0.969 | ×0.995 | 6.48% |
| Triples /BIP | 2.67% | ÷1.000 | ×0.720 | ×0.969 | ×0.995 | 1.85% |
| Home runs /BIP | 1.33% | ÷1.000 | ×0.780 | — | ×0.995 | 1.03% |
Factors used: level-wide ROK factors (no league-specific row for this league/era). Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 20 vs a level average of 19.5 → −0.5% on BB/HBP/hit rates (0.5 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.969.
Result: wOBA .340 → .236; ISO .146 → .101; BABIP .320 → .241. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).
2015 ROKAZL Athletics · 91 PAwOBA .293 → .214 (−79)K% 14.3% → 20.6%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 14.29% | ÷1.000 | ×1.440 | — | — | 20.57% |
| BB% (unintentional) /PA | 12.09% | ÷1.000 | ×0.620 | — | ×1.008 | 7.55% |
| HBP% /PA | 1.10% | — | ×0.720 | — | ×1.008 | 0.80% |
| Singles /BIP | 18.46% | ÷1.000 | ×0.820 | ×0.990 | ×1.008 | 15.10% |
| Doubles /BIP | 7.69% | ÷1.000 | ×0.720 | ×0.990 | ×1.008 | 5.53% |
| Triples /BIP | 1.54% | ÷1.000 | ×0.720 | ×0.990 | ×1.008 | 1.11% |
| Home runs /BIP | 0.00% | ÷1.000 | ×0.780 | — | ×1.008 | 0.00% |
Factors used: level-wide ROK factors (no league-specific row for this league/era). Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 19 vs a level average of 19.5 → +0.8% on BB/HBP/hit rates (0.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.990.
Result: wOBA .293 → .214; ISO .090 → .064; BABIP .277 → .217. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).
2014 DSLDSL Athletics · 193 PAwOBA .304 → .212 (−91)K% 15.0% → 18.3%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 15.03% | ÷1.000 | ×1.220 | — | — | 18.33% |
| BB% (unintentional) /PA | 13.99% | ÷1.000 | ×0.700 | — | ×1.008 | 9.87% |
| HBP% /PA | 3.11% | — | ×0.700 | — | ×1.008 | 2.19% |
| Singles /BIP | 20.33% | ÷1.000 | ×0.680 | ×0.969 | ×1.008 | 13.50% |
| Doubles /BIP | 8.13% | ÷1.000 | ×0.600 | ×0.969 | ×1.008 | 4.76% |
| Triples /BIP | 0.00% | ÷1.000 | ×0.600 | ×0.969 | ×1.008 | 0.00% |
| Home runs /BIP | 0.00% | ÷1.000 | ×0.470 | — | ×1.008 | 0.00% |
Factors used: level-wide DSL factors (no league-specific row for this league/era). Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 18 vs a level average of 18.5 → +0.8% on BB/HBP/hit rates (0.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.969.
Result: wOBA .304 → .212; ISO .066 → .042; BABIP .278 → .179. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).
2013 DSLDSL Athletics · 101 PAwOBA .312 → .212 (−99)K% 14.9% → 18.1%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 14.85% | ÷1.000 | ×1.220 | — | — | 18.12% |
| BB% (unintentional) /PA | 5.94% | ÷1.000 | ×0.700 | — | ×1.022 | 4.25% |
| HBP% /PA | 3.96% | — | ×0.700 | — | ×1.022 | 2.83% |
| Singles /BIP | 22.67% | ÷1.000 | ×0.680 | ×1.024 | ×1.022 | 16.14% |
| Doubles /BIP | 8.00% | ÷1.000 | ×0.600 | ×1.024 | ×1.022 | 5.03% |
| Triples /BIP | 0.00% | ÷1.000 | ×0.600 | ×1.024 | ×1.022 | 0.00% |
| Home runs /BIP | 1.33% | ÷1.000 | ×0.470 | — | ×1.022 | 0.64% |
Factors used: level-wide DSL factors (no league-specific row for this league/era). Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 17 vs a level average of 18.5 → +2.2% on BB/HBP/hit rates (1.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.024.
Result: wOBA .312 → .212; ISO .100 → .058; BABIP .311 → .213. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).