James Harris

PosCF
B/TR/R
Born1993-08-07
Age (2027)33
No MLB projection yet. Career stats below are historical.
Overview
A+LAST SEASON 2017
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WARMLE AVG/OBP/SLG
201521AAA/A2 orgs376.251/.360/.36851461—.204/.293/.298
201622AA/A+OAK599.297/.373/.41072381—.256/.312/.349
201723A+OAK89.244/.303/.3411239—.212/.247/.294
Contract
No contract data on file.

Career Stats + Projections

Real MLB stats plus park-adjusted projections — this season (so far / rest / full), then future seasons and career totals.
basis chips: RAW = as recorded · CTX = with park/league context · A+C = actual + context combined · MLE = level/park-neutral
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.

YearAge LvlTeam MLB% PAAB H2B3BHR BBSOHBP SBCS AVGOBPSLGOPS ISOBABIP K%BB% wOBAwRC+ BATRUNFLDPOSREP WAR
▸ Career — actual stats, one row per stint (as recorded, no adjustments)
201117 ROKGCL Rays — 180158 26600 13397 134 165258203461 38217 227 222 -4 — — — — — —
201218 ROKPrinceton Rays — 196170 31641 22382 68 182284282566 100229 1911 261 15 — — — — — —
201420 ABowling Green Hot Rods — 268244 56807 23691 113 230299348647 119292 269 294 42 — — — — — —
201420 ROKGCL Rays — 1715 4100 121 10 267353333686 67308 126 320 42 — — — — — —
201521 AAANashville Sounds — 1713 2000 360 30 154312154466 250 3518 230 28 — — — — — —
201521 ABeloit Snappers — 359302 771445 48753 1113 255363377740 123319 2113 333 63 — — — — — —
201622 AAMidland RockHounds — 4037 8100 2110 21 216256243500 27296 285 225 10 — — — — — —
201622 A+Stockton Ports — 559492 1493047 541188 219 303381423804 120384 2110 359 86 — — — — — —
201723 A+Stockton Ports — 8982 20501 7200 21 244303341645 98311 228 293 39 — — — — — —
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
201117 ROK MLEGCL Rays — 180163 20400 8567 134 123197147344 25184 314 162 -4 — — — — — —
201218 ROK MLEPrinceton Rays — 196178 25431 14542 68 140211213425 73192 287 190 15 — — — — — —
201420 A MLEBowling Green Hot Rods — 268252 48705 15951 113 190239278517 87281 356 230 42 — — — — — —
201420 ROK MLEGCL Rays — 1715 3100 131 10 200294267561 67241 186 230 42 — — — — — —
201521 AAA MLENashville Sounds — 1714 2000 270 30 143250143393 249 4112 209 28 — — — — — —
201521 A MLEBeloit Snappers — 359314 651144 361033 1113 207295306600 99275 2910 261 63 — — — — — —
201622 AA MLEMidland RockHounds — 4038 7100 1150 21 184205211416 26269 382 183 10 — — — — — —
201622 A+ MLEStockton Ports — 559510 1332636 361538 219 261319359678 98352 276 296 86 — — — — — —
201723 A+ MLEStockton Ports — 8985 18401 4270 21 212247294541 82286 304 226 39 — — — — — —
201117 ROK MLEGCL Rays — 180163 20400 8567 134 123197147344 25185 314 162 -4 — — — — — —
201117 ROK RAWGCL Rays — 180158 26600 13397 134 165258203461 38217 227 222 -4 — — — — — —
201218 ROK MLEPrinceton Rays — 196178 25431 14542 68 140211213425 73195 287 190 15 — — — — — —
201218 ROK RAWPrinceton Rays — 196170 31641 22382 68 182284282566 100229 1911 261 15 — — — — — —
201420 A MLE2 teams — 285267 51705 16972 123 191242273516 82279 346 230 42 — — — — — —
201420 A RAW2 teams — 285259 60907 24712 123 232302347649 116293 258 295 42 — — — — — —
201521 A MLE2 teams — 376328 671144 381113 1413 204293299591 95289 3010 259 61 — — — — — —
201521 A RAW2 teams — 376315 791445 51813 1413 251360368729 117316 2214 328 61 — — — — — —
201622 A+ MLE2 teams — 599548 1392636 371678 2310 254310345655 91351 286 288 81 — — — — — —
201622 A+ RAW2 teams — 599529 1573147 561298 2310 297373410783 113378 229 350 81 — — — — — —
201723 A+ MLEStockton Ports — 8985 18401 4270 21 212247294541 82298 304 226 39 — — — — — —
201723 A+ RAWStockton Ports — 8982 20501 7200 21 244303341645 98311 228 293 39 — — — — — —
201117 ROK MLEGCL Rays — 180163 20400 8567 134 123197147344 25184 314 162 -4 — — — — — —
201218 ROK MLEPrinceton Rays — 196178 25431 14542 68 140211213425 73192 287 190 15 — — — — — —
201420 A MLE2 teams — 285265 51705 16972 123 192242275518 83279 346 230 42 — — — — — —
201521 A MLE2 teams — 376332 671144 381113 1413 202293295588 93274 3010 259 61 — — — — — —
201622 A+ MLE2 teams — 599549 1392636 371678 2310 253310344655 91346 286 288 81 — — — — — —
201723 A+ MLEStockton Ports — 8985 18401 4270 21 212247294541 82286 304 226 39 — — — — — —
▸ Career Totals
Career— MLE — 17251569 320561017 11751222 7039 204269285554 81289 307 245 52 -99 -2 +0 +6 +37 -5.8
/ 162G— MLE — 650591 1202146 441938 2615 203267283550 80288 307 245 52 -37 -1 +0 +2 +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.

2017 A+Stockton Ports · 89 PAwOBA .281 → .226 (−54)K% 22.5% → 29.8%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA22.47%÷1.010×1.340——29.82%
BB% (unintentional) /PA6.74%÷1.115×0.710—×0.9884.24%
HBP% /PA0.00%—×0.790—×0.9880.00%
Singles /BIP22.58%÷0.979×0.910×1.030×0.98821.35%
Doubles /BIP8.06%÷0.972×0.820×1.030×0.9886.92%
Triples /BIP0.00%÷0.900×0.760×1.030×0.9880.00%
Home runs /BIP1.61%÷1.397×0.920—×0.9881.05%

Factors used: league row CAL. Park (home-season share, regressed): HR 179, 1B 96, 2B 94, 3B 80, K 102, BB 123 — applied at half strength. Age: age 24 vs a level average of 22.8 → −1.2% on BB/HBP/hit rates (1.2 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.030.

Result: wOBA .281 → .226; ISO .098 → .072; BABIP .311 → .286. 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+Stockton Ports · 559 PAwOBA .352 → .296 (−56)K% 21.1% → 27.3%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA21.11%÷1.035×1.340——27.32%
BB% (unintentional) /PA9.66%÷1.065×0.710—×0.9986.42%
HBP% /PA1.43%—×0.790—×0.9981.13%
Singles /BIP28.88%÷0.978×0.910×1.008×0.99827.05%
Doubles /BIP8.02%÷0.939×0.820×1.008×0.9987.05%
Triples /BIP1.07%÷0.990×0.760×1.008×0.9980.83%
Home runs /BIP1.87%÷1.066×0.920—×0.9981.61%

Factors used: league row CAL. Park (home-season share, regressed): HR 113, 1B 96, 2B 88, 3B 98, K 107, BB 113 — 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 ×1.008.

Result: wOBA .352 → .296; ISO .120 → .100; BABIP .384 → .352. 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 AAMidland RockHounds · 40 PAwOBA .225 → .183 (−43)K% 27.5% → 36.5%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA27.50%÷0.920×1.220——36.48%
BB% (unintentional) /PA5.00%÷1.062×0.700—×1.0273.39%
HBP% /PA0.00%—×0.870—×1.0270.00%
Singles /BIP26.92%÷1.022×0.920—×1.02724.88%
Doubles /BIP3.85%÷1.075×0.840—×1.0273.09%
Triples /BIP0.00%÷1.150×0.940—×1.0270.00%
Home runs /BIP0.00%÷0.999×0.800—×1.0270.00%

Factors used: league row TL. Park (home-season share, regressed): HR 100, 1B 104, 2B 115, 3B 130, K 84, BB 112 — 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 .225 → .183; ISO .027 → .020; BABIP .296 → .269. 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 ABeloit Snappers · 359 PAwOBA .328 → .261 (−67)K% 20.9% → 28.8%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA20.89%÷0.987×1.360——28.79%
BB% (unintentional) /PA13.37%÷0.936×0.690——9.85%
HBP% /PA0.84%—×0.780——0.65%
Singles /BIP23.79%÷1.018×0.920×0.976—20.97%
Doubles /BIP6.17%÷1.021×0.830×0.976—4.89%
Triples /BIP1.76%÷0.900×0.910×0.976—1.74%
Home runs /BIP2.20%÷1.084×0.800——1.63%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 117, 1B 104, 2B 104, 3B 80, K 97, BB 87 — 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.976.

Result: wOBA .328 → .261; ISO .123 → .096; BABIP .319 → .275. 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 AAANashville Sounds · 17 PAwOBA .239 → .209 (−31)K% 35.3% → 44.0%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA35.29%÷1.034×1.290——44.01%
BB% (unintentional) /PA17.65%÷1.018×0.710—×1.05012.93%
HBP% /PA0.00%—×0.980—×1.0500.00%
Singles /BIP28.57%÷0.953×0.900—×1.05028.32%
Doubles /BIP0.00%÷1.063×0.810—×1.0500.00%
Triples /BIP0.00%÷0.952×0.810—×1.0500.00%
Home runs /BIP0.00%÷0.843×0.780—×1.0500.00%

Factors used: league row PCL. Park (home-season share, regressed): HR 69, 1B 91, 2B 113, 3B 90, K 107, BB 104 — applied at half strength. Age: age 22 vs a level average of 27.2 → +5.0% on BB/HBP/hit rates (5.2 yr younger than average).

Result: wOBA .239 → .209; ISO .000 → .000; BABIP .250 → .249. 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 ABowling Green Hot Rods · 268 PAwOBA .286 → .230 (−56)K% 25.7% → 35.3%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA25.75%÷0.991×1.360——35.33%
BB% (unintentional) /PA8.58%÷1.073×0.690—×1.0155.60%
HBP% /PA0.37%—×0.780—×1.0150.30%
Singles /BIP23.43%÷0.976×0.920×1.024×1.01522.95%
Doubles /BIP4.57%÷0.946×0.830×1.024×1.0154.17%
Triples /BIP0.00%÷0.920×0.910×1.024×1.0150.00%
Home runs /BIP4.00%÷0.966×0.800—×1.0153.36%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 93, 1B 95, 2B 89, 3B 84, K 98, BB 115 — applied at half strength. Age: age 21 vs a level average of 22.0 → +1.5% on BB/HBP/hit rates (1.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.024.

Result: wOBA .286 → .230; ISO .119 → .092; BABIP .292 → .281. 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 ROKGCL Rays · 17 PAwOBA .312 → .230 (−82)K% 11.8% → 16.9%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA11.76%÷1.000×1.440——16.94%
BB% (unintentional) /PA5.88%÷1.000×0.620—×0.9853.59%
HBP% /PA5.88%—×0.720—×0.9854.17%
Singles /BIP23.08%÷1.000×0.820—×0.98518.64%
Doubles /BIP7.69%÷1.000×0.720—×0.9855.46%
Triples /BIP0.00%÷1.000×0.720—×0.9850.00%
Home runs /BIP0.00%÷1.000×0.780—×0.9850.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 21 vs a level average of 19.5 → −1.5% on BB/HBP/hit rates (1.5 yr older than average).

Result: wOBA .312 → .230; ISO .067 → .047; BABIP .308 → .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).

2012 ROKPrinceton Rays · 196 PAwOBA .255 → .190 (−65)K% 19.4% → 27.5%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA19.39%÷1.000×1.420——27.53%
BB% (unintentional) /PA11.22%÷1.000×0.640—×1.0087.24%
HBP% /PA1.02%—×0.740—×1.0080.76%
Singles /BIP15.15%÷1.000×0.840×1.031×1.00813.22%
Doubles /BIP4.55%÷1.000×0.740×1.031×1.0083.49%
Triples /BIP3.03%÷1.000×0.740×1.031×1.0082.33%
Home runs /BIP0.76%÷1.000×0.800—×1.0080.61%

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 ×1.031.

Result: wOBA .255 → .190; ISO .100 → .074; BABIP .229 → .192. 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).