با binomial چطور میشه در مثال قبل استفاده کرد؟
به صورت عمومی به صورت زیر میتوانید از تابع binomial در آزمونهای آماری استفاده کنید:
from scipy.stats import binomtest import numpy as np def ab_test_binomial(visitors_a, conversions_a, visitors_b, conversions_b, alternative='two-sided'): """ Perform A/B testing using binomial test. Parameters: - visitors_a: Total visitors in group A - conversions_a: Conversions in group A - visitors_b: Total visitors in group B - conversions_b: Conversions in group B - alternative: 'two-sided', 'less', or 'greater' (default: 'two-sided') Returns: - p_value: The calculated p-value - result: Interpretation string """ # Calculate conversion rates rate_a = conversions_a / visitors_a rate_b = conversions_b / visitors_b # Perform binomial test comparing B to A's rate test_result = binomtest( k=conversions_b, n=visitors_b, p=rate_a, alternative=alternative ) p_value = test_result.pvalue # Interpretation if p_value < 0.05: if rate_b > rate_a: result = "Statistically significant: B performs better than A" else: result = "Statistically significant: A performs better than B" else: result = "Not statistically significant: No difference detected" return p_value, result, rate_a, rate_b # Example usage if __name__ == "__main__": # Example data visitors_a = 1000 conversions_a = 100 visitors_b = 1050 conversions_b = 130 p_value, result, rate_a, rate_b = ab_test_binomial( visitors_a, conversions_a, visitors_b, conversions_b ) print(f"Conversion rate A: {rate_a:.2%}") print(f"Conversion rate B: {rate_b:.2%}") print(f"P-value: {p_value:.4f}") print(result)
توضیحات کد: