Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Konfidensintervaller | Statistiske Grunnlag for A/B-testing
A/B-testing med Python

Konfidensintervaller

Sveip for å vise menyen

Konfidensintervaller er et grunnleggende begrep innen statistikk og spiller en avgjørende rolle i A/B-testing. Mens p-verdier forteller om en observert forskjell kan skyldes tilfeldigheter, gir konfidensintervaller et verdiområde som sannsynligvis inneholder den sanne effektstørrelsen. Dette området hjelper deg å forstå ikke bare om det er en statistisk signifikant forskjell, men også hvor stor denne forskjellen kan være og hvor sikker du kan være på det.

Et konfidensintervall beregnes ut fra utvalgsdataene dine og uttrykkes vanligvis med en prosentandel, for eksempel 95 %. Dette betyr at hvis du gjentar eksperimentet mange ganger, vil 95 % av de beregnede intervallene inneholde den sanne populasjonsparameteren. I A/B-testing brukes ofte konfidensintervaller for å estimere forskjellen i konverteringsrater mellom kontroll- og variantgruppene.

Beregningen av et konfidensintervall for en andel (som en konverteringsrate) innebærer å bestemme standardfeilen til den observerte raten, og deretter bruke en z-score for å definere området rundt den observerte raten. Konfidensintervaller er mer informative enn bare p-verdier fordi de viser både størrelsen og presisjonen til den estimerte effekten, noe som gir et bedre grunnlag for beslutninger om testresultatene.

123456789101112131415161718192021222324252627282930313233343536
import numpy as np from scipy.stats import norm # Sample data: number of conversions and total users in each group conversions_A = 200 users_A = 2000 conversions_B = 240 users_B = 2000 # Calculating conversion rates rate_A = conversions_A / users_A rate_B = conversions_B / users_B # Calculatig the standard error for each group se_A = np.sqrt(rate_A * (1 - rate_A) / users_A) se_B = np.sqrt(rate_B * (1 - rate_B) / users_B) # 95% confidence interval uses a z-score of approximately 1.96 z = norm.ppf(0.975) # Calculating confidence intervals ci_A = (rate_A - z * se_A, rate_A + z * se_A) ci_B = (rate_B - z * se_B, rate_B + z * se_B) print(f"Group A conversion rate: {rate_A:.3f}") print(f"95% CI for Group A: ({ci_A[0]:.3f}, {ci_A[1]:.3f})") print(f"Group B conversion rate: {rate_B:.3f}") print(f"95% CI for Group B: ({ci_B[0]:.3f}, {ci_B[1]:.3f})") # Confidence interval for the difference in conversion rates diff = rate_B - rate_A se_diff = np.sqrt(se_A**2 + se_B**2) ci_diff = (diff - z * se_diff, diff + z * se_diff) print(f"Difference in conversion rates (B - A): {diff:.3f}") print(f"95% CI for difference: ({ci_diff[0]:.3f}, {ci_diff[1]:.3f})")

Når du tolker et konfidensintervall i A/B-testing, ser du på området hvor den sanne forskjellen i konverteringsrater sannsynligvis befinner seg. Hvis konfidensintervallet for forskjellen ikke inkluderer null, kan du med rimelig sikkerhet si at det er en reell effekt. Hvis det inkluderer null, kan den observerte forskjellen skyldes tilfeldigheter.

For beslutningstaking hjelper konfidensintervaller deg å forstå både mulig størrelse på effekten og usikkerheten rundt den. Dette gjør det enklere å kommunisere resultater til interessenter: i stedet for bare å si at et resultat er statistisk signifikant, kan du forklare det sannsynlige forbedringsområdet (eller nedgangen) og hvor sikker du er på dette estimatet. Dette gir et bedre grunnlag for forretningsbeslutninger med en tydeligere forståelse av potensielle risikoer og gevinster.

question mark

Hvilken påstand beskriver best den praktiske tolkningen av et 95 % konfidensintervall for forskjellen i konverteringsrater mellom to grupper i en A/B-test?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 3. Kapittel 3
some-alt