Ana içeriğe geç
Kesit SQL
İleri · Veri Bilimi

A/B testi analizi

Dönüşüm oranı, lift ve iki oran z-testi.

Uygulamada aç, 4 alıştırmayı çözÜcretsiz, hesap gerekmez, kurulum yok.

Bu sayfa dersin okuma sürümüdür. Metin bir kutuyu çalıştırmanı ya da adıma geçmeni söylüyorsa dersi uygulamada aç.

Deney sonuçları

ab_test tablosunda her kullanıcı A (kontrol) veya B (yeni tasarım) grubunda. Önce temel tablo:

SELECT variant,
       COUNT(*) AS kullanici,
       SUM(converted) AS donusen,
       ROUND(AVG(converted) * 100, 2) AS donusum_yuzde,
       ROUND(SUM(revenue) / COUNT(*), 2) AS kullanici_basi_gelir
FROM ab_test
GROUP BY variant;

İki oran z-testi

B'nin oranı A'dan anlamlı derecede yüksek mi?

p = (x₁ + x₂)/(n₁ + n₂), SE = √(p(1−p)(1/n₁ + 1/n₂)), z = (p₂ − p₁)/SE. |z| > 1.96 ise %95 güvenle fark anlamlıdır.

WITH g AS (
  SELECT variant, COUNT(*) AS n, SUM(converted) AS x, AVG(converted) AS p
  FROM ab_test GROUP BY variant
),
a AS (SELECT * FROM g WHERE variant = 'A'),
b AS (SELECT * FROM g WHERE variant = 'B')
SELECT ROUND(a.p * 100, 2) AS p_a, ROUND(b.p * 100, 2) AS p_b,
       ROUND(100 * (b.p / a.p - 1), 1) AS lift_yuzde,
       ROUND((b.p - a.p) / SQRT(((a.x + b.x) * 1.0 / (a.n + b.n)) * (1 - (a.x + b.x) * 1.0 / (a.n + b.n)) * (1.0 / a.n + 1.0 / b.n)), 2) AS z
FROM a, b;
İyi uygulamalarÖrneklem büyüklüğünü test öncesi belirle, sonuçlara test bitmeden bakıp durdurma (peeking), grupların dengeli dağıldığını (SRM kontrolü) doğrula, birden çok metriğe bakıyorsan çoklu test düzeltmesini düşün.
Alıştırmalara geç (4)