calculations.matches_13_prob_goal_diff
Skellam-distribution probabilities for the goal difference home − away (μ₁ = stats_goals_expected_home, μ₂ = stats_goals_expected_away). Evaluated for k ∈ -7…7; tails are bucketed.
P(X = k) = e^(-(μ₁+μ₂)) · (μ₁/μ₂)^(k/2) · I_|k|(2·sqrt(μ₁·μ₂))
Lineage
Section titled “Lineage”flowchart LR m9[/matches_9_expected_goals/] --> me[/calculations.matches_13_prob_goal_diff/] me --> mart[/mart.matches/] click m9 "/calculations/matches_9_expected_goals/" "Open" click mart "/mart/matches/" "Open"
Columns
Section titled “Columns”| Column | Description | Formula |
|---|---|---|
event_id | Bet365 event identifier. | passthrough |
event_date | Event date. | passthrough |
event_partition_key | ClickHouse partition key. | passthrough |
score_total | Actual total goals (carried). | passthrough |
score_difference | Actual goal difference (carried). | passthrough |
stats_goals_expected_home | Expected home goals. | passthrough |
stats_goals_expected_away | Expected away goals. | passthrough |
stats_goals_expected_total | Expected total goals. | passthrough |
prob_goal_diff_neg3_minus | Probability of Δ < −3. | round(sum(if(goal_diff < -3, probability, 0)), 4) |
prob_goal_diff_neg3 | Probability of Δ = −3. | round(max(if(goal_diff = -3, probability, 0)), 4) |
prob_goal_diff_neg2 | Probability of Δ = −2. | round(max(if(goal_diff = -2, probability, 0)), 4) |
prob_goal_diff_neg1 | Probability of Δ = −1. | round(max(if(goal_diff = -1, probability, 0)), 4) |
prob_goal_diff_0 | Probability of a draw. | round(max(if(goal_diff = 0, probability, 0)), 4) |
prob_goal_diff_1 | Probability of Δ = 1. | round(max(if(goal_diff = 1, probability, 0)), 4) |
prob_goal_diff_2 | Probability of Δ = 2. | round(max(if(goal_diff = 2, probability, 0)), 4) |
prob_goal_diff_3 | Probability of Δ = 3. | round(max(if(goal_diff = 3, probability, 0)), 4) |
prob_goal_diff_3_plus | Probability of Δ > 3. | round(sum(if(goal_diff > 3, probability, 0)), 4) |
prob_goal_diff_sum | Sanity check — should be ≈ 1 within [-7, 7]. | round(sum(probability), 4) |
probability = round(skellam_pmf(stats_goals_expected_home, stats_goals_expected_away, goal_diff), 4)frommacros/skellam_pmf.sql.