Встречается на собеседованиях • сегодня
Как получить распределение конверсии в A/B тестах
Для получения распределения конверсии в A/B тестах можно использовать бутстреп или аналитическое приближение (нормальное/бета-распределение).
Бутстреп:
python
import numpy as np
def bootstrap_conversion(data, n_bootstrap=10000):
bootstrapped_means = []
for _ in range(n_bootstrap):
sample = np.random.choice(data, size=len(data), replace=True)
bootstrapped_means.append(np.mean(sample))
return bootstrapped_means
Пример для группы A и B
conversion_A = np.random.binomial(1, 0.1, size=1000)
conversion_B = np.random.binomial(1, 0.12, size=1000)
dist_A = bootstrap_conversion(conversion_A)
dist_B = bootstrap_conversion(conversion_B)
text
**Бета-распределение (аналитически):**
Если `conversions` – число успехов, `trials` – общее число наблюдений:
```python
from scipy.stats import beta
conversions_A, trials_A = 100, 1000
conversions_B, trials_B = 120, 1000
beta_A = beta(conversions_A + 1, trials_A - conversions_A + 1)
beta_B = beta(conversions_B + 1, trials_B - conversions_B + 1)Бета-распределение предпочтительнее для малых выборок, бутстреп – для непараметрических случаев.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы