E· Universitetstatistik-sannolikhet· ca 60 min· utvecklande· verifierad 2026-09-20
Hypotesprövning och p-värden
Kunna ställa upp noll- och alternativhypotes, tolka p-värden och förstå deras begränsningar.
Förkunskaper
- EKonfidensintervallkrävs
Intuition
Nollhypotes H0: «ingen skillnad». p-värdet = sannolikheten att se en så stor (eller större) skillnad om H0 vore sann. Litet p (< 0,05) → datan är osannolik under H0 → vi förkastar H0.
Vad p inte är: sannolikheten att H0 är sann; ett mått på hur stor skillnaden är; ett bevis.
I ML:
- Två modeller på samma testfall → McNemar (klassificering) eller parat t-test/permutationstest på per-fall-skillnader.
- Många jämförelser (10 prompter × 5 mått) → några blir «signifikanta» av slump. Bonferroni (α/m) eller rapportera ärligt hur många tester som gjordes.
- Rapportera effektstorlek med intervall — «+2,1 pe [0,4; 3,8]» säger mer än «p = 0,03».
Med n = 100 000 blir allt signifikant; med n = 30 blir inget. p mäter evidens och stickprovsstorlek.
Kod
import numpy as np
from scipy import stats
# permutationstest på parade skillnader (fungerar för vilket mått som helst)
def perm_test(diff, n=20000, seed=0):
rng = np.random.default_rng(seed); diff = np.asarray(diff); obs = diff.mean()
flips = rng.choice([-1, 1], size=(n, len(diff)))
null = (flips * diff).mean(axis=1)
return obs, np.mean(np.abs(null) >= abs(obs))
ratt_a = np.array([1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1])
ratt_b = np.array([1,0,0,1,1,1,0,1,0,1,0,1,1,1,1,0,1,0,1,1,1,0,1,0,1,1,0,0,1,1])
print(perm_test(ratt_a - ratt_b)) # (0.167, ~0.03)
# McNemar: bara diskordanta fall räknas
b = int(((ratt_a == 1) & (ratt_b == 0)).sum()); c = int(((ratt_a == 0) & (ratt_b == 1)).sum())
print(b, c, stats.binomtest(b, b + c, 0.5).pvalue) # 5 0 → p = 0.0625 (exakt)
# Bonferroni: 12 jämförelser → tröskel 0.05/12
Behärskning innebär
- Ställer upp H0/H1 och väljer test (t-test, McNemar, permutation)
- Tolkar p-värde korrekt och känner dess begränsningar
- Korrigerar för multipla jämförelser och rapporterar effektstorlek
Logga in för att göra övningarna och bygga upp din behärskning.
Källor
- Wikipedia — p-värde (CC BY-SA 4.0) — CC BY-SA 4.0
- Wikipedia — McNemar's test (CC BY-SA 4.0) — CC BY-SA 4.0
- ASA statement on p-values (2016) — öppen PDF