Joey Armstrong
| Year | Age | Lvl / Team | PA | AVG/OBP/SLG | HR | SB | wRC+ | WAR | MLE AVG/OBP/SLG |
|---|---|---|---|---|---|---|---|---|---|
| 2015 | 21 | ROKMissoula Ospr… | 189 | .217/.315/.292 | 2 | 2 | 17 | — | .153/.217/.194 |
| 2016 | 22 | A+/A2 orgs | 264 | .253/.350/.358 | 2 | 6 | 59 | — | .211/.285/.299 |
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.
| 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) | |||||||||||||||||||||||||||||||
| 2015 | 21 | ROK | Missoula Osprey | — | 189 | 161 | 35 | 6 | 0 | 2 | 23 | 37 | 0 | 2 | 2 | 217 | 315 | 292 | 607 | 75 | 264 | 20 | 12 | 277 | 17 | — | — | — | — | — | — |
| 2016 | 22 | A+ | Visalia Rawhide | — | 56 | 51 | 8 | 3 | 0 | 0 | 3 | 15 | 2 | 0 | 0 | 157 | 232 | 216 | 448 | 59 | 222 | 27 | 5 | 213 | -6 | — | — | — | — | — | — |
| 2016 | 22 | A | Kane County Cougars | — | 208 | 178 | 50 | 11 | 2 | 2 | 24 | 48 | 5 | 6 | 0 | 281 | 382 | 399 | 781 | 118 | 375 | 23 | 12 | 354 | 76 | — | — | — | — | — | — |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2015 | 21 | ROK MLE | Missoula Osprey | — | 189 | 170 | 26 | 4 | 0 | 1 | 14 | 53 | 0 | 2 | 2 | 153 | 217 | 194 | 412 | 41 | 205 | 28 | 7 | 194 | 17 | — | — | — | — | — | — |
| 2016 | 22 | A+ MLE | Visalia Rawhide | — | 56 | 52 | 6 | 2 | 0 | 0 | 2 | 20 | 2 | 0 | 0 | 115 | 179 | 154 | 332 | 38 | 193 | 36 | 4 | 159 | -6 | — | — | — | — | — | — |
| 2016 | 22 | A MLE | Kane County Cougars | — | 208 | 186 | 44 | 9 | 2 | 2 | 16 | 63 | 5 | 6 | 0 | 237 | 314 | 339 | 653 | 102 | 340 | 30 | 8 | 280 | 76 | — | — | — | — | — | — |
| 2015 | 21 | ROK MLE | Missoula Osprey | — | 189 | 170 | 26 | 4 | 0 | 1 | 14 | 53 | 0 | 2 | 2 | 153 | 217 | 194 | 412 | 41 | 210 | 28 | 7 | 194 | 17 | — | — | — | — | — | — |
| 2015 | 21 | ROK RAW | Missoula Osprey | — | 189 | 161 | 35 | 6 | 0 | 2 | 23 | 37 | 0 | 2 | 2 | 217 | 315 | 292 | 607 | 75 | 264 | 20 | 12 | 277 | 17 | — | — | — | — | — | — |
| 2016 | 22 | A MLE | 2 teams | — | 264 | 237 | 50 | 11 | 2 | 2 | 19 | 83 | 7 | 6 | 0 | 211 | 289 | 300 | 589 | 89 | 316 | 31 | 7 | 254 | 58 | — | — | — | — | — | — |
| 2016 | 22 | A RAW | 2 teams | — | 264 | 229 | 58 | 14 | 2 | 2 | 27 | 63 | 7 | 6 | 0 | 253 | 350 | 358 | 708 | 105 | 341 | 24 | 10 | 324 | 58 | — | — | — | — | — | — |
| 2015 | 21 | ROK MLE | Missoula Osprey | — | 189 | 173 | 26 | 4 | 0 | 1 | 14 | 53 | 0 | 2 | 2 | 150 | 217 | 191 | 408 | 40 | 205 | 28 | 7 | 194 | 17 | — | — | — | — | — | — |
| 2016 | 22 | A MLE | 2 teams | — | 264 | 236 | 50 | 11 | 2 | 2 | 19 | 83 | 7 | 6 | 0 | 212 | 289 | 301 | 590 | 89 | 309 | 31 | 7 | 254 | 58 | — | — | — | — | — | — |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| Career | — | MLE | — | 453 | 407 | 76 | 15 | 2 | 3 | 33 | 136 | 7 | 8 | 2 | 187 | 260 | 256 | 515 | 69 | 269 | 30 | 7 | 229 | 41 | -32 | +1 | +0 | -5 | +10 | -2.6 | |
| / 162G | — | MLE | — | 650 | 584 | 109 | 22 | 3 | 4 | 47 | 195 | 10 | 11 | 3 | 187 | 259 | 255 | 514 | 68 | 270 | 30 | 7 | 229 | 41 | -45 | +1 | +0 | -7 | +14 | -3.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.
2016 AKane County Cougars · 208 PAwOBA .345 → .280 (−65)K% 23.1% → 30.5%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 23.08% | ÷1.029 | ×1.360 | — | — | 30.49% |
| BB% (unintentional) /PA | 11.54% | ÷0.995 | ×0.690 | — | ×0.990 | 7.92% |
| HBP% /PA | 2.40% | — | ×0.780 | — | ×0.990 | 1.86% |
| Singles /BIP | 26.92% | ÷0.988 | ×0.920 | ×1.012 | ×0.990 | 25.11% |
| Doubles /BIP | 8.46% | ÷1.000 | ×0.830 | ×1.012 | ×0.990 | 7.03% |
| Triples /BIP | 1.54% | ÷1.008 | ×0.910 | ×1.012 | ×0.990 | 1.39% |
| Home runs /BIP | 1.54% | ÷0.975 | ×0.800 | — | ×0.990 | 1.25% |
Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 95, 1B 98, 2B 100, 3B 102, K 106, BB 99 — applied at half strength. Age: age 23 vs a level average of 22.0 → −1.0% on BB/HBP/hit rates (1.0 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.012.
Result: wOBA .345 → .280; ISO .118 → .095; BABIP .375 → .340. 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 A+Visalia Rawhide · 56 PAwOBA .208 → .159 (−49)K% 26.8% → 35.2%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 26.79% | ÷1.020 | ×1.340 | — | — | 35.19% |
| BB% (unintentional) /PA | 5.36% | ÷1.008 | ×0.710 | — | ×0.998 | 3.77% |
| HBP% /PA | 3.57% | — | ×0.790 | — | ×0.998 | 2.82% |
| Singles /BIP | 13.89% | ÷0.994 | ×0.910 | — | ×0.998 | 12.69% |
| Doubles /BIP | 8.33% | ÷1.038 | ×0.820 | — | ×0.998 | 6.57% |
| Triples /BIP | 0.00% | ÷1.065 | ×0.760 | — | ×0.998 | 0.00% |
| Home runs /BIP | 0.00% | ÷1.134 | ×0.920 | — | ×0.998 | 0.00% |
Factors used: league row CAL. Park (home-season share, regressed): HR 127, 1B 99, 2B 108, 3B 113, K 104, BB 102 — 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).
Result: wOBA .208 → .159; ISO .059 → .042; BABIP .222 → .193. 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 ROKMissoula Osprey · 189 PAwOBA .275 → .194 (−80)K% 19.6% → 28.2%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 19.58% | ÷1.000 | ×1.440 | — | — | 28.19% |
| BB% (unintentional) /PA | 12.17% | ÷1.000 | ×0.610 | — | ×0.975 | 7.24% |
| HBP% /PA | 0.00% | — | ×0.720 | — | ×0.975 | 0.00% |
| Singles /BIP | 21.77% | ÷1.000 | ×0.820 | ×1.000 | ×0.975 | 17.40% |
| Doubles /BIP | 4.84% | ÷1.000 | ×0.720 | ×1.000 | ×0.975 | 3.40% |
| Triples /BIP | 0.00% | ÷1.000 | ×0.720 | ×1.000 | ×0.975 | 0.00% |
| Home runs /BIP | 1.61% | ÷1.000 | ×0.750 | — | ×0.975 | 1.18% |
Factors used: league row PIO. Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 22 vs a level average of 19.5 → −2.5% on BB/HBP/hit rates (2.5 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.000.
Result: wOBA .275 → .194; ISO .075 → .053; BABIP .264 → .205. 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).