clock menu more-arrow no yes mobile

Filed under:

BtB Power Rankings: Week 17 -- The one where I changed a bunch of stuff

This week's rankings feature a number of improvements under the hood.  More on that below...but if you just want to see the rankings, here they are!

Toprank-072910_medium

Allrank-072910_medium

"On Paper" Playoff Standings

American League: E=Rays, C=Twins, W=Rangers, WC=Yankees
National League: E=Braves, C=Cardinals, W=Padres, WC=Rockies

 

This Week's Feature

There was a good amount of discussion last week about various ways to improve the rankings.  Fortunately, it's summer, and I just got a big project done Tuesday, so I was able to sit down and implement them yesterday.  Let's take a tour of the new features:

1. Offensive runs are now calculated using base runs instead of FanGraphs' wRC.  I don't think there's anything particularly wrong with wRC, but there are some advantages to using base runs:

  • I have complete control over the equation being used (though I suppose that means I'm responsible for it, which is a downside).  I'm using this one (see end of article), which performs well across all major and minor leagues, though I do tweak it to make sure the total runs scored in MLB adds up to exactly the estimated runs scored.
  • Base runs works better in team situations, because it gives extra credit to teams that have both good on base ability and good advancement-around-the-bases ability (and penalizes teams that do not) because those two elements of offense can interact.
  • I'm now able to include Reached On Errors, which wRC does not include.  While ROE's are not traditionally credited to hitters, there is a significant "skill" component to getting them (hitters who hit more grounders, or are fast, get more ROE's; hat tip to @fastballs for the link to the study), and so it's worth it to include them here.
As you'd (probably) guess, it didn't really make that much of a difference.  But some teams did get a small boost (esp. the Angels, Mariners, Astros, and Pirates all improved by 0.015+ TPI), while others were hurt (Yankees & Twins) by this change.  


2. Pitching runs allowed estimates are based on an average of xFIP-runs allowed and a park-adjusted FIP-runs allowed.  This change was done because there was concern that some teams do show some sort of "skill" in preventing home runs on fly balls that is repeatable and not linked to park effects.  Since xFIP completely regresses HR/FB rates to league average, it would ignore any such skill.  HR/FB rate is a fairly random statistic, and so I don't want to give full credit for it.  Therefore, I've opted to effectively regress 50% by calculating both xFIP and FIP-based runs and averaging them.

The FIP calculation here does feature regressed HR totals based on Dan the Turk's HR/FB park factors (to which I added a bit of regression based on years of data going into the stat).  So again, what we're trying to credit here are deviations from normal HR/FB rate that was due to repeatable skill, not just park effects.

This change benefitted/hurt teams with fairly extreme HR/FB rates after park adjustment.  The Giants and White Sox were up, and the Padres, Royals, and Dbacks were down.


3. The power rankings now include strength of schedule (SoS) adjustements, which I presented last night.  SoS in the table below is an estimated opponent component winning percentage, and is based on a few iterations to estimate team quality.  What I do is:
  • Calculate component winning percentage for each team.
  • Use the log5 method to back-calculate what a team's winning percentage would have been had they played 0.500 teams.  Basically, I'm solving for W%(A) in the log5 equation reported here.  The result is what I'm calling "cW%s" (for schedule-adjusted component winning percentage).
  • Again use the "reverse" log5 method to apply the league adjustment to this total.  This is a slight change of methodology, as I applied the league adjustment to run totals.  Here, I'm applying the same adjustment, but doing it by providing a second strength of schedule adjustment based on the expected true talent estimate for AL teams.  Those numbers are here, though I reduced their magnitude slightly because AL and NL teams do play each other a small amount each season and thus have already affected their performances (this is a tweak I did last year, thanks to @btb_sky for the suggestion).  The result is TPI.
xTW is still based on current team wins + expected wins, but I'm using an average of cW% and cW%s.  You might think we should use cW%s, but currently weak strength of schedule doesn't necessarily predict tougher schedules to come--the Cardinals and Reds, for example, still have lots of games against the Pirates, Astros, and Cubs despite already having fairly easy schedules.  In other cases, like with the Yankees, I'd be surprised if their end of season strength of schedule is as weak as it is right now.

The teams the SoS adjustment helped the most are, naturally, those teams with the toughest schedules: Orioles, D-backs, Mets, Indians, etc.  And it hurts teams like the Cubs, Rangers, Reds, and A's who have had relatively easy seasons thus far.  For most teams (i.e. those at the center of the distribution), it really didn't make that much of a difference.


So there you have it!  All things considered, teams really didn't move that much. For those Giants fans out there incensed at how unfair the rankings are for your team, you did gain a spot in the rankings this week!  Probably the most noticeable change was the Blue jays vaulting into the top-5 (which now includes 4 AL East teams...I hate the AL East!).  Toronto has had a slightly harder than average schedule, but this week, due to some combination of performance and methodology tweaks (sorry, I haven't gone back and checked), they saw incremental increases to their offense, pitching, and fielding!  None of the boosts were large, but they all went the right direction and as a result the Jays gained 27-points of TPI.  I still don't believe in Jose Bautista, though, and I don't care what anyone else says. :)

Under the Hood

Converting Runs to Wins

Team G RS eRS RA eRA W% pW% cW% SoS cW%s xtW LgQ TPI
ARI 101 425 425 543 499 0.366 0.384 0.424 0.523 0.441 63 0.482 0.424
ATL 100 469 468 391 396 0.580 0.583 0.577 0.500 0.572 94 0.482 0.555
BAL 101 361 397 552 539 0.307 0.310 0.360 0.530 0.382 54 0.518 0.400
BOS 102 517 523 451 462 0.569 0.564 0.559 0.502 0.556 91 0.518 0.574
CHW 100 445 427 401 413 0.560 0.548 0.516 0.490 0.501 88 0.518 0.519
CHC 102 413 429 452 437 0.451 0.459 0.492 0.477 0.464 75 0.482 0.446
CIN 103 487 494 420 448 0.553 0.568 0.546 0.481 0.522 88 0.482 0.504
CLE 101 417 427 494 485 0.416 0.422 0.441 0.515 0.451 69 0.518 0.468
COL 101 434 440 415 415 0.505 0.521 0.527 0.506 0.528 83 0.482 0.510
DET 100 437 454 453 452 0.510 0.482 0.501 0.490 0.486 82 0.518 0.504
FLA 101 463 453 454 441 0.495 0.509 0.512 0.515 0.522 82 0.482 0.504
HOU 101 368 369 500 459 0.416 0.361 0.400 0.503 0.399 66 0.482 0.382
KCR 101 420 423 529 525 0.416 0.392 0.398 0.511 0.404 66 0.518 0.421
LAD 101 465 459 455 444 0.535 0.511 0.516 0.499 0.510 85 0.482 0.492
LAA 104 472 436 495 502 0.500 0.477 0.434 0.502 0.431 77 0.518 0.448
MIL 103 491 522 561 521 0.466 0.436 0.501 0.488 0.484 77 0.482 0.466
MIN 102 505 501 422 418 0.549 0.584 0.585 0.491 0.571 91 0.518 0.588
NYY 100 551 529 415 430 0.640 0.632 0.597 0.489 0.582 101 0.518 0.599
NYM 101 443 446 406 450 0.505 0.540 0.496 0.518 0.508 82 0.482 0.490
OAK 100 431 428 410 422 0.510 0.522 0.507 0.486 0.488 82 0.518 0.506
PHI 101 464 446 413 429 0.545 0.554 0.518 0.513 0.526 87 0.482 0.508
PIT 100 358 375 536 518 0.360 0.319 0.353 0.499 0.348 58 0.482 0.332
SDP 99 478 453 375 375 0.596 0.611 0.586 0.495 0.577 96 0.482 0.559
SEA 102 343 349 452 454 0.382 0.378 0.384 0.505 0.384 62 0.518 0.401
SFG 102 459 448 374 425 0.569 0.592 0.524 0.496 0.516 89 0.482 0.498
STL 101 466 471 390 421 0.554 0.582 0.552 0.490 0.537 89 0.482 0.519
TBR 100 517 497 392 402 0.620 0.628 0.599 0.500 0.594 99 0.518 0.611
TEX 101 497 491 408 448 0.584 0.592 0.543 0.477 0.515 91 0.518 0.533
TOR 102 477 480 446 426 0.520 0.532 0.556 0.502 0.553 86 0.518 0.571
WSN 101 405 409 459 451 0.426 0.442 0.456 0.505 0.455 71 0.482 0.438

G=Games
RS = Actual Runs Scored, after a park adjustment
eRS = Estimated Runs Scored, after park adjustment (see table below)
RA = Actual Runs Allowed, after a park adjustment
eRA = Estimated Runs Allowed, after park adjustments (see table below)
W% = Actual Winning Percentage
pW% = PythagenPat Winning Percentage, based on actual runs scored and run allowed totals
cW% = Component Winning Percentage, using estimated runs scored and estimated runs allowed totals.  If you don't like the league adjustment, click in the header and sort by this column to get an "unsullied" ranking.

SoS = Strength of Schedule.  This is an iterative weighted average of the component-based winning percentages of a team's opponents.  Described in this post.
cW%s = Schedule-adjusted Component Winning Percentage.  Calculated by applying SoS to cW% with the log5 method, as described in this post.
xTW = Extrapolated wins.  Based on current real wins to date, and extrapolated wins over the rest of the season.  Extrapolations are based on an average of cW% and cW%s, as justified in this post.

LgQ = League Quality.  The AL has superior talent to the NL (justification here and here, and modified most recently here).  The number shown is an estimated true talent level (in winning percentage) of the two leagues were they to be able to play one other for a large number of games.  It's based on the last two years of interleague, with a small adjustment toward 0.500 to account for the fact that the leagues do play one another and thus have already had a small effect on one another's performance.

TPI = Team Performance Index, a hypothetical winning % based on cW%s, after adjustment for league quality. Think of this as the W% we'd expect teams to have if they were all in one big league and were allowed to play 10,000 games vs. every team.

 

Team Offenses and Defenses

 

Team RS eRS wOBA OBP SLG HitRns EqBRR RA eRA ERA FIP* xFIP PitRns Field BABIP
ARI 425 425 0.318 0.328 0.418 433 -8 543 499 5.33 4.75 4.54 472 -9 0.318
ATL 469 468 0.331 0.344 0.399 466 1 391 396 3.61 3.82 3.97 407 13 0.295
BAL 361 397 0.310 0.315 0.384 401 -4 552 539 5.17 4.60 4.82 499 -45 0.319
BOS 517 523 0.347 0.345 0.460 524 -1 451 462 4.19 4.26 4.48 479 13 0.294
CHW 445 427 0.319 0.326 0.417 427 1 401 413 3.93 3.56 4.11 422 -9 0.307
CHC 413 429 0.320 0.325 0.412 435 -6 452 437 4.13 4.01 4.15 435 0 0.309
CIN 487 494 0.338 0.338 0.439 492 2 420 448 4.11 4.19 4.51 484 28 0.292
CLE 417 427 0.319 0.324 0.385 427 0 494 485 4.43 4.54 4.67 481 -3 0.303
COL 434 440 0.323 0.336 0.421 437 3 415 415 4.13 3.72 4.10 427 2 0.303
DET 437 454 0.327 0.339 0.416 454 0 453 452 4.36 4.15 4.54 466 2 0.303
FLA 463 453 0.327 0.322 0.400 445 9 454 441 4.09 3.82 4.19 436 -16 0.313
HOU 368 369 0.301 0.299 0.355 364 5 500 459 4.44 3.81 4.17 430 -39 0.329
KCR 420 423 0.318 0.334 0.399 430 -7 529 525 5.18 5.08 4.66 483 -15 0.314
LAD 465 459 0.328 0.330 0.394 455 4 455 444 4.00 3.77 4.11 431 -22 0.305
LAA 472 436 0.322 0.318 0.401 450 -14 495 502 4.46 4.32 4.38 466 -30 0.312
MIL 491 522 0.346 0.335 0.438 522 1 561 521 4.95 4.26 4.37 464 -55 0.330
MIN 505 501 0.340 0.353 0.434 503 -2 422 418 4.00 3.92 4.12 433 14 0.308
NYY 551 529 0.349 0.354 0.443 528 1 415 430 3.88 4.00 4.25 437 3 0.287
NYM 443 446 0.325 0.317 0.391 434 12 406 450 3.77 4.02 4.39 464 3 0.309
OAK 431 428 0.319 0.324 0.384 423 5 410 422 3.72 4.27 4.25 438 26 0.284
PHI 464 446 0.325 0.327 0.418 447 -1 413 429 3.96 4.32 4.14 430 19 0.293
PIT 358 375 0.302 0.306 0.369 378 -3 536 518 4.97 4.83 4.65 472 -30 0.310
SDP 478 453 0.327 0.324 0.377 451 2 375 375 3.26 3.97 3.76 390 36 0.287
SEA 343 349 0.295 0.303 0.339 353 -4 452 454 4.00 4.18 4.45 469 10 0.295
SFG 459 448 0.325 0.329 0.408 450 -2 374 425 3.44 3.91 4.31 460 23 0.293
STL 466 471 0.332 0.334 0.413 475 -3 390 421 3.36 4.11 4.08 429 20 0.296
TBR 517 497 0.340 0.340 0.407 485 12 392 402 3.65 4.00 4.15 432 31 0.284
TEX 497 491 0.338 0.342 0.424 482 9 408 448 3.78 4.36 4.47 474 29 0.282
TOR 477 480 0.335 0.311 0.454 483 -3 446 426 4.13 3.86 4.19 440 6 0.302
WSN 405 409 0.313 0.324 0.395 417 -8 459 451 4.17 4.12 4.45 458 -1 0.309

 

RS = Actual Runs Scored
eRS = Estimated Runs Scored: HitRns + EqBRR
wOBA The Book's statistic, but park adjusted, and using data from both HitRns and EqBRR
OBP = On Base Percentage (Times on Base / Plate Appearances)
SLG = Slugging Percentage (Total Bases / At Bats)
HitRns = Base Runs-estimated runs scored, ignoring all base running, using the equation in this post.
EqBRR = Dan Fox's composite baserunning statistics from Baseball Prospectus, minus stolen bases since they are included in wRC.

RA = Actual Runs Allowed, after park adjustment
eRA = Estimated Runs Allowed: PitRns - Field
ERA = Straight-up Earned Run Average
FIP* = Fielding-Independent Runs, based strictly on K-, BB-, and HR-rates.  HR/FB rates are park adjusted using these park factors.
xFIP = Expected Fielding-Independent Runs from FanGraphs.  Like FIP, but with HR/Outfield Fly Ball rates regressed completely to league average.  xFIP is as predictive as any other DIPS-like stat.
PitRns = Pitching Runs Allowed, the average expected runs allowed based on FIP and xFIP.  Described in this post.
Field = Described in this post.  It is essentially an average of team UZR, DRS (minus rSB since I calculate catcher fielding separately), and BsRFld.  BsRFld is just difference between FIP-based runs allowed and park-adjusted Base Runs, and is a less direct approach of measuring fielding.  The fielding number also includes a catcher fielding statistic, based on SB's, CS's, WP's, PB's, E's, and this year catcher interference.  The catching methods are essentially those described here.  But I'm using B-Ref data this year, and so there are slight tweaks to the methodology, generally in ways that should lead to greater accuracy.  If you want to know, feel free to ask!
BABIP = Batting Average on Balls In Play.  Fluctuates at the team level with fielding, although park effects and chance events can have effects as well.