The Outlier

By Me, Ethan!

How scoring works in The Outlier

This page explains how outlier scores are computed using a weighted combination of player and league context. It covers how hybrid z-scores (# of standard deviations a stat is from the average) are calculated, how team stats are treated, and what filters are applied to keep results meaningful.

Overview

Scoring formula

Each player stat is measured as a z-score relative to both the player’s own season averages and the league’s averages. The final hybrid score blends these components:

// compute player z-score and league z-score
player_z = (actual - player_mean) / player_std
league_z = (actual - league_mean) / league_std

// combine using configured weights
combined_z = player_weight * player_z + league_weight * league_z

// apply stat weight for final score
weighted_score = combined_z * stat_weight

Stat Weights

Not all stats influence game outcomes equally. To reflect their impact, each stat is multiplied by a stat weight in the scoring formula. Higher-weighted stats contribute more heavily to outlier ranking.

Why this method

The hybrid model balances two important perspectives: individual consistency and league-wide rarity. A performance might be ordinary for one player but extraordinary in the league context—or vice versa. Weighting both helps highlight the most meaningful statistical outliers without overreacting to small-sample noise.

Example

If a player who averages 8 points (std 4) scores 24 in a game, their player_z = (24−8)/4 = 4.0. With player_weight = 0.7, league_weight = 0.3, and a stat weight of 1.2, that game becomes a significant positive outlier that rises to the top of the rankings.

Back to Home

Stat Weights & Detection Rules

Each statistic is evaluated using custom thresholds and multipliers to determine whether a performance is a meaningful outlier. More impactful stats receive higher weights, while less predictive or negative stats (like turnovers or fouls) receive lower or negative weights. Here's the actual thresholds and values I currently have applied (open to suggestions).

Stat Player Threshold (Z) Team Threshold (Z) Weight Minimum Raw Difference
Counting Stats
PTS0.51.21.25
AST0.51.01.24
OREB1.01.01.54
DREB1.01.01.24
STL1.21.20.83
BLK1.01.01.03
TOV1.01.0-1.03
PF0.50.5-0.63
Shooting – Made Shots
FG3M0.50.51.23
FTM0.81.00.85
Shooting Percentages
FG3_PCT1.51.21.50.30
FT_PCT1.21.00.80.08
TS_PCT0.51.52.50.10
Advanced Metrics
AST_TO0.31.01.54
REB_PCT0.31.01.20.10
PLUS_MINUS1.01.00.75
Team-Only Advanced Metrics
OFF_RATING1.01.53
DEF_RATING1.0-1.53
PACE1.01.510
PTS_OFF_TOV1.02.53
PTS_PAINT1.01.54