Точный тест Фишера

A/B-тестирование в R

Lauryn Burleigh

Data Scientist

Условия применения

  • Непараметрический метод для категориальных данных
    • Снова ли выбирают пиццу с сыром или пепперони
  • Выборка < 1000
  • Частота < 5 для не менее 20% ячеек
  • Точный тест Фишера для точного p-значения
  • Таблица частот 2×2

Гипергеометрическое распределение

  • Вероятность таблицы частот
table(Pizza$Topping, Pizza$EatAgain)
              No Yes
  Cheese     140 360
  Pepperoni   80 420
A/B-тестирование в R

Гипотезы

  • Нулевая гипотеза: нет связи между повторным выбором пиццы и видом начинки

Фотография: несколько рук тянутся за кусочками пиццы.

A/B-тестирование в R

Выборка

library(pwr)
pwr.chisq.test(w = 0.1, df = 2, 
               power = 0.80, 
               sig.level = 0.05)
     Chi squared power calculation 
              w = 0.1
              N = 963.4689
             df = 2
      sig.level = 0.05
          power = 0.8
NOTE: N is the number of observations
table(Pizza$Topping, Pizza$EatAgain)
              No Yes
  Cheese     140 360
  Pepperoni   80 420
A/B-тестирование в R

Тест

freqtbl <- table(Pizza$Topping, 
                 Pizza$Time)
fisher.test(freqtbl) 
    Fisher's Exact Test for Count Data
data:  freqtbl
p-value = 0.001809
alternative hypothesis: true odds ratio is not equal to 1
95 percent confidence interval:
 0.4569013 0.8417208
sample estimates:
odds ratio 
 0.6209987 
A/B-тестирование в R

Размер эффекта

freqtbl <- table(Pizza$Topping, 
                 Pizza$Time)
fisher.test(freqtbl) 
  • Маленькая: 1,5
  • Средняя: 2,5
  • Большая: 4
  • Пицца с пепперони × 0,62 по сравнению с пиццей с сыром
Fisher's Exact Test for Count Data
data:  freqtbl
p-value = 0.001809
alternative hypothesis: true odds 
ratio is not equal to 1
95 percent confidence interval:
 0.4569013 0.8417208
sample estimates:
odds ratio 
 0.6209987  
A/B-тестирование в R

Мощность

library(pwr)
pwr.2p.test(h = 0.62, n = 500, 
            sig.level = 0.002) 
    Difference of proportion power 
 calculation for binomial distribution

              h = 0.62
              n = 500
      sig.level = 0.002
          power = 1
    alternative = two.sided

NOTE: same sample sizes
A/B-тестирование в R

Давайте потренируемся!

A/B-тестирование в R

Preparing Video For Download...