
The NBA is back! Following a long summer — that was punctuated with the most thrilling Olympic men’s basketball in recent memory — the season kicks off tonight with a pair of games. The league spotlights three of its banner franchises: the Celtics, the Lakers, and the Knicks. Rounding out the quartet is Anthony Edwards — presumably the NBA’s next US-born superstar — and his new-look Timberwolves.
To me, the NBA’s schedule always hints at the league’s tacit hierarchy. How does the NBA view its teams? It anticipates what teams will do well and what won’t, while factoring in media market size, star power, and narrative. There’s politics in who gets national TV games, who gets back-to-backs, who gets airtime on Christmas and MLK Day, two of the NBA’s marquee days. In other words, the calculus of schedule-making represents a melding of quantitative (statistics, projections) and qualitative (narrative, history) analysis. As much as the NBA is a sports league, it also produces entertainment.
There are plenty of ways to rank teams by quantitative means. That’s what standings are! And with the explosion of advanced statistics, teams can be assessed through the lens of Offensive and Defensive Rating, True Shooting Percentage, Efficiency Differential, and ACH — Achievement Level in Terms of Wins.
These metrics are invaluable, especially when deployed by savvy analysts. But they don’t tell the whole story. They capture a moment in time, or sometimes, flatten months and months of games into one static data point. As delivered, they don’t account for change over time. And they don’t capture the intangibles that go just as far to account for — and predict — outcomes. Are trade rumors capsizing the locker room? Are starting lineups being shuffled? Is your second leading scorer disgruntled? Did your rookie center blow a game-tying layup?
There’s no perfect way to account for the constellation of factors that go into an NBA season. But power rankings seek to distill these forces to make sense of it all. And by comparing power rankings over the course of an entire season, we can better understand what’s happening in the league and how it’s being covered.
Introduction
Method
I used BeautifulSoup to scrape the content of six different power rankings articles from five leading sports media outlets:
- TheScore (published 10/22/24)
- ESPN (published 10/21/24)
- The Ringer (published 10/15/24)
- Bleacher Report (published 10/4/24)
- CBS (published 10/2/24)
- ESPN (published 7/17/24, after free agency had died down)
I created functions to extract the ranking, team name, and comments for each team’s power ranking based on the HTML syntax of each site. I also made an umbrella function that will call the correct sub-function based on the domain name.
From there, I saved to a CSV and did an analysis in Google Sheets. In the future, I will instead analyze in pandas and create visuals using Matplotlib, but I wanted to get this done in time for the start of the season!
As the season develops, my aim is to create interactive graphics tracking the rise and fall of teams, tied to game results, availability, and news around the league. I am a beginner at Python and data viz, so this will be a fun way to channel my passion for basketball into a growing project!
Without further ado, let’s jump in!
Power Rankings Roundup, vol. 1
Rank | Team | Average Rank | Variance |
---|---|---|---|
1 | Boston Celtics | 1.0 | 0 |
2 | Oklahoma City Thunder | 2.0 | 0 |
3 | New York Knicks | 4.0 | 3 |
4 | Denver Nuggets | 4.3 | 4 |
5 | Dallas Mavericks | 5.0 | 2 |
6 | Philadelphia 76ers | 5.5 | 3 |
7 | Minnesota Timberwolves | 6.7 | 6 |
8 | Milwaukee Bucks | 8.7 | 2 |
9 | Phoenix Suns | 8.8 | 5 |
10 | Cleveland Cavaliers | 11.0 | 3 |
11 | Memphis Grizzlies | 11.0 | 5 |
12 | Indiana Pacers | 12.2 | 6 |
13 | Orlando Magic | 12.2 | 2 |
14 | New Orleans Pelicans | 14.5 | 7 |
15 | Los Angeles Lakers | 15.2 | 5 |
16 | Golden State Warriors | 15.5 | 3 |
17 | Sacramento Kings | 16.5 | 3 |
18 | Miami Heat | 17.2 | 4 |
19 | Los Angeles Clippers | 19.3 | 3 |
20 | Houston Rockets | 20.0 | 2 |
21 | San Antonio Spurs | 20.5 | 1 |
22 | Atlanta Hawks | 22.2 | 1 |
23 | Chicago Bulls | 23.5 | 3 |
24 | Toronto Raptors | 24.0 | 3 |
25 | Utah Jazz | 25.7 | 6 |
26 | Charlotte Hornets | 26.2 | 5 |
27 | Detroit Pistons | 27.2 | 3 |
28 | Portland Trail Blazers | 27.3 | 3 |
29 | Brooklyn Nets | 28.5 | 4 |
30 | Washington Wizards | 29.5 | 1 |
Power Rankings Analysis
There’s so much to unpack, but since we’re writing this before a second of the regular season is played, here’s where I’d like to start…
Consensus Teams
Across all six samples, two teams had 0 variance. The Boston Celtics and the Oklahoma City Thunder ranked 1 and 2, respectively. This means that each ranking had Boston at 1 and OKC at 2.
Boston Celtics (position: 1; no variance)
The reigning champ Celtics retained all but the most peripheral parts of their roster. And a slightly fraught summer (Tatum being passed up for FMVP and barely making it off the bench in the Olympics; Brown, the FMVP winner, not even making it to the Olympics at all!) could have them back with a vengeance.
Oklahoma City Thunder (position: 2; no variance)
Meanwhile the Thunder, after a breakout season under Coach of the Year Mark Daigneault, may have had the league’s best offseason, filling serious holes with the acquisition of Alex Caruso via trade (somehow, Chicago failed to extract any of OKC’s cache of picks) and signed Isaiah Hartenstein via free agency. Note: Isaiah Hartenstein’s injury, which is expected to take about 6 weeks to recover from, was announced on October 17, after all all but two of the power rankings were made live… I’ll look into the effect that this had on OKC’s perception in coming installments.
Certainty isn’t always good…
The other three low-variance teams are the San Antonio Spurs (position: 20.5; variance: 1) Atlanta Hawks (position: 22.2; variance: 1), and the Washington Wizards (position: 29.5; variance: 1). Most would agree the longview for these different franchises will probably diverge (only one team can have Victor Wembenyama at a time, unfortunately for the 29 teams not located in San Antonio). But the level of consensus about the outlook of these teams for this season is remarkable. And as a note, until the October 21 and October 22 entries, Atlanta had been ranked 22 in all polls that I recorded.
High-Variance Teams
If Boston and OKC are the consensus toast of the league, and Atlanta, San Antonio, and the lowly Washington are agreed to be in the basement, then what do we make of these?
Minnesota Timberwolves (position: 6.7; variance: 6)
There’s a caveat here — two of the six rankings happened before Minnesota’s blockbuster trade which saw them exchange KAT with Julius Randle and Donte DiVincenzo. Worth noting, then, that after the trade, the T-Wolves’ position can be aggregated at 7.5 with a variance of 3. (i.e., lower ceiling, lower variance).
Indiana Pacers (position 12.2; variance: 6)
The reigning Eastern Conference semifinalists were among the last 4 teams standing just a few months ago, but here, they’re barely in the top half of teams.
There is a (fair) perception that Indiana’s ECF appearance was a bit flukey (they ran up against a Knicks team which barely had enough players to field a starting five). And the nature of the team’s explosive offense and paltry defense would result in a wide range of assessment.
Utah Jazz (position: 25.7; variance: 6)
The enigma of Ainge.
Utah has one of the league’s most promising young coaches in Will Hardy and a good-enough complement of supporting players. But the sense is that, for the third year in a row, this team will be looking to maximize assets (Cooper Flagg, anyone?) instead of win games. In both previous years, the team has got off to a great start and then not-so-sneakily pulled the plug on the season.
New Orleans Pelicans (position: 14.5; variance: 7)
A fragile, uncategorizable star. A disgruntled, subtweeting forward. A past-his-prime guard who never became a full star. And a new point guard coming off the heels of a failed experiment in Atlanta. Even without taking into account the manifold health concerns, I have no idea what to make of this team either… This is the highest-variance team for good reason.
Power Rankings Roundup Wrapup
This is the first installment of a season-long exploration of the NBA, its 30 teams, and critically, how they’re covered. Join me as I hone my skills and delve into the winners, losers, and also-rans of the NBA.
Volume 2: NBA Power Rankings Roundup: The Quarter Mark (12/17)
Response to “NBA Power Rankings Roundup: Preseason”
[…] minutes before the tip off of the season’s first game — Celtics vs. Knicks. At that time, it was a simple, non-interactive table featuring team, average rank, and variance, to measure how differently outlets saw the future of […]