Logan Ice
| Year | Age | Lvl / Team | PA | AVG/OBP/SLG | HR | SB | wRC+ | WAR | MLE AVG/OBP/SLG |
|---|---|---|---|---|---|---|---|---|---|
| 2017 | 22 | ACLE | 367 | .228/.324/.370 | 11 | 1 | 53 | — | .187/.263/.278 |
| 2018 | 23 | AA/A+2 orgs | 221 | .208/.300/.297 | 1 | 0 | 29 | — | .170/.235/.246 |
| 2019 | 24 | AACLE | 281 | .180/.295/.255 | 4 | 0 | 31 | — | .160/.245/.232 |
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) | |||||||||||||||||||||||||||||||
| 2017 | 22 | A | Lake County Captains | — | 367 | 316 | 72 | 10 | 1 | 11 | 42 | 74 | 3 | 1 | 1 | 228 | 324 | 370 | 694 | 142 | 258 | 20 | 11 | 311 | 53 | — | — | — | — | — | — |
| 2018 | 23 | AA | Akron RubberDucks | — | 55 | 48 | 12 | 3 | 2 | 0 | 5 | 18 | 0 | 0 | 0 | 250 | 321 | 396 | 717 | 146 | 387 | 33 | 9 | 307 | 79 | — | — | — | — | — | — |
| 2018 | 23 | A+ | Lynchburg Hillcats | — | 166 | 144 | 28 | 5 | 1 | 1 | 18 | 46 | 2 | 0 | 0 | 194 | 293 | 264 | 557 | 69 | 273 | 28 | 11 | 260 | 12 | — | — | — | — | — | — |
| 2019 | 24 | AA | Akron RubberDucks | — | 281 | 239 | 43 | 4 | 1 | 4 | 36 | 74 | 3 | 0 | 0 | 180 | 295 | 255 | 550 | 75 | 241 | 26 | 13 | 260 | 31 | — | — | — | — | — | — |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2017 | 22 | A MLE | Lake County Captains | — | 367 | 327 | 61 | 7 | 1 | 7 | 31 | 101 | 3 | 1 | 1 | 187 | 263 | 278 | 541 | 92 | 236 | 28 | 8 | 246 | 53 | — | — | — | — | — | — |
| 2018 | 23 | AA MLE | Akron RubberDucks | — | 55 | 49 | 12 | 3 | 2 | 0 | 4 | 22 | 0 | 0 | 0 | 245 | 302 | 388 | 690 | 143 | 389 | 40 | 7 | 285 | 79 | — | — | — | — | — | — |
| 2018 | 23 | A+ MLE | Lynchburg Hillcats | — | 166 | 151 | 22 | 3 | 1 | 1 | 11 | 62 | 2 | 0 | 0 | 146 | 213 | 199 | 412 | 53 | 225 | 37 | 7 | 186 | 12 | — | — | — | — | — | — |
| 2019 | 24 | AA MLE | Akron RubberDucks | — | 281 | 250 | 40 | 4 | 1 | 4 | 25 | 90 | 3 | 0 | 0 | 160 | 245 | 232 | 477 | 72 | 222 | 32 | 9 | 214 | 31 | — | — | — | — | — | — |
| 2017 | 22 | A MLE | Lake County Captains | — | 367 | 327 | 61 | 7 | 1 | 7 | 31 | 101 | 3 | 1 | 1 | 187 | 263 | 278 | 541 | 92 | 241 | 28 | 8 | 246 | 53 | — | — | — | — | — | — |
| 2017 | 22 | A RAW | Lake County Captains | — | 367 | 316 | 72 | 10 | 1 | 11 | 42 | 74 | 3 | 1 | 1 | 228 | 324 | 370 | 694 | 142 | 258 | 20 | 11 | 311 | 53 | — | — | — | — | — | — |
| 2018 | 23 | A+ MLE | 2 teams | — | 221 | 200 | 34 | 6 | 3 | 1 | 15 | 84 | 2 | 0 | 0 | 170 | 235 | 245 | 480 | 75 | 280 | 38 | 7 | 211 | 29 | — | — | — | — | — | — |
| 2018 | 23 | A+ RAW | 2 teams | — | 221 | 192 | 40 | 8 | 3 | 1 | 23 | 64 | 2 | 0 | 0 | 208 | 300 | 297 | 596 | 89 | 300 | 29 | 10 | 272 | 29 | — | — | — | — | — | — |
| 2019 | 24 | AA MLE | Akron RubberDucks | — | 281 | 250 | 40 | 4 | 1 | 4 | 25 | 90 | 3 | 0 | 0 | 160 | 245 | 232 | 477 | 72 | 229 | 32 | 9 | 214 | 31 | — | — | — | — | — | — |
| 2019 | 24 | AA RAW | Akron RubberDucks | — | 281 | 239 | 43 | 4 | 1 | 4 | 36 | 74 | 3 | 0 | 0 | 180 | 295 | 255 | 550 | 75 | 241 | 26 | 13 | 260 | 31 | — | — | — | — | — | — |
| 2017 | 22 | A MLE | Lake County Captains | — | 367 | 330 | 61 | 7 | 1 | 7 | 31 | 101 | 3 | 1 | 1 | 185 | 263 | 276 | 539 | 91 | 236 | 28 | 8 | 246 | 53 | — | — | — | — | — | — |
| 2018 | 23 | A+ MLE | 2 teams | — | 221 | 202 | 34 | 6 | 3 | 1 | 15 | 84 | 2 | 0 | 0 | 168 | 235 | 243 | 478 | 74 | 266 | 38 | 7 | 211 | 29 | — | — | — | — | — | — |
| 2019 | 24 | AA MLE | Akron RubberDucks | — | 281 | 251 | 40 | 4 | 1 | 4 | 25 | 90 | 3 | 0 | 0 | 159 | 245 | 231 | 476 | 72 | 222 | 32 | 9 | 214 | 31 | — | — | — | — | — | — |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| Career | — | MLE | — | 869 | 777 | 135 | 17 | 5 | 12 | 71 | 275 | 8 | 1 | 1 | 174 | 250 | 255 | 505 | 81 | 246 | 32 | 8 | 227 | 40 | -63 | -0 | +0 | +16 | +19 | -2.9 | |
| / 162G | — | MLE | — | 650 | 581 | 102 | 13 | 4 | 9 | 53 | 206 | 6 | 1 | 1 | 176 | 252 | 258 | 510 | 83 | 249 | 32 | 8 | 227 | 40 | -47 | -0 | +0 | +12 | +14 | -2.2 | |
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 AAAkron RubberDucks · 281 PAwOBA .255 → .214 (−42)K% 26.3% → 32.0%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 26.33% | ÷1.003 | ×1.220 | — | — | 32.04% |
| BB% (unintentional) /PA | 12.81% | ÷1.019 | ×0.700 | — | ×1.012 | 8.91% |
| HBP% /PA | 1.07% | — | ×0.850 | — | ×1.012 | 0.92% |
| Singles /BIP | 20.61% | ÷1.008 | ×0.970 | ×0.950 | ×1.012 | 19.07% |
| Doubles /BIP | 2.42% | ÷0.925 | ×0.860 | ×0.950 | ×1.012 | 2.17% |
| Triples /BIP | 0.61% | ÷0.900 | ×0.950 | ×0.950 | ×1.012 | 0.62% |
| Home runs /BIP | 2.42% | ÷0.863 | ×0.780 | — | ×1.012 | 2.22% |
Factors used: league row EL. Park (home-season share, regressed): HR 73, 1B 102, 2B 85, 3B 80, K 101, BB 104 — applied at half strength. Age: age 24 vs a level average of 24.8 → +1.2% on BB/HBP/hit rates (0.8 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .255 → .214; ISO .075 → .069; BABIP .241 → .222. 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 A+Lynchburg Hillcats · 166 PAwOBA .257 → .186 (−71)K% 27.7% → 37.6%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 27.71% | ÷1.047 | ×1.420 | — | — | 37.57% |
| BB% (unintentional) /PA | 10.84% | ÷1.025 | ×0.630 | — | ×0.998 | 6.65% |
| HBP% /PA | 1.20% | — | ×0.860 | — | ×0.998 | 1.03% |
| Singles /BIP | 21.43% | ÷1.044 | ×0.940 | ×0.950 | ×0.998 | 18.28% |
| Doubles /BIP | 5.10% | ÷1.054 | ×0.830 | ×0.950 | ×0.998 | 3.81% |
| Triples /BIP | 1.02% | ÷1.150 | ×0.800 | ×0.950 | ×0.998 | 0.67% |
| Home runs /BIP | 1.02% | ÷0.967 | ×0.900 | — | ×0.998 | 0.95% |
Factors used: league row CAR. Park (home-season share, regressed): HR 93, 1B 109, 2B 111, 3B 130, K 110, BB 105 — 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 .257 → .186; ISO .069 → .050; BABIP .273 → .225. 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 AAAkron RubberDucks · 55 PAwOBA .305 → .285 (−21)K% 32.7% → 39.8%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 32.73% | ÷1.004 | ×1.220 | — | — | 39.78% |
| BB% (unintentional) /PA | 9.09% | ÷0.941 | ×0.700 | — | ×1.027 | 6.94% |
| HBP% /PA | 0.00% | — | ×0.850 | — | ×1.027 | 0.00% |
| Singles /BIP | 23.33% | ÷0.968 | ×0.970 | — | ×1.027 | 24.00% |
| Doubles /BIP | 10.00% | ÷0.922 | ×0.860 | — | ×1.027 | 9.58% |
| Triples /BIP | 6.67% | ÷0.980 | ×0.950 | — | ×1.027 | 6.64% |
| Home runs /BIP | 0.00% | ÷0.840 | ×0.780 | — | ×1.027 | 0.00% |
Factors used: league row EL. Park (home-season share, regressed): HR 68, 1B 94, 2B 84, 3B 96, K 101, BB 88 — applied at half strength. Age: age 23 vs a level average of 24.8 → +2.7% on BB/HBP/hit rates (1.8 yr younger than average).
Result: wOBA .305 → .285; ISO .146 → .140; BABIP .387 → .389. 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).
2017 ALake County Captains · 367 PAwOBA .307 → .246 (−62)K% 20.2% → 27.6%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 20.16% | ÷0.993 | ×1.360 | — | — | 27.61% |
| BB% (unintentional) /PA | 11.44% | ÷0.941 | ×0.690 | — | — | 8.39% |
| HBP% /PA | 0.82% | — | ×0.780 | — | — | 0.64% |
| Singles /BIP | 20.66% | ÷0.914 | ×0.920 | ×0.950 | — | 19.76% |
| Doubles /BIP | 4.13% | ÷1.030 | ×0.830 | ×0.950 | — | 3.16% |
| Triples /BIP | 0.41% | ÷0.931 | ×0.910 | ×0.950 | — | 0.38% |
| Home runs /BIP | 4.55% | ÷1.129 | ×0.800 | — | — | 3.22% |
Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 126, 1B 83, 2B 106, 3B 86, K 99, BB 88 — 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). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .307 → .246; ISO .142 → .100; BABIP .258 → .236. 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).