Comment effectuer un test binomial en Python



Un test binomial compare une proportion d’échantillon à une proportion hypothétique.

Par exemple, supposons que nous ayons un dé à 6 faces. Si nous le lançons 12 fois, nous nous attendons à ce que le chiffre « 3 » apparaisse 1/6 du temps, ce qui serait 12 * (1/6) = 2 fois.

Si le chiffre « 3 » apparaît effectivement 4 fois, est-ce la preuve que le dé est biaisé en faveur du chiffre « 3 » ? Nous pourrions effectuer un test binomial pour répondre à cette question.

En Python, on peut effectuer un test binomial en utilisant la fonction binom_test() de la bibliothèque scipy.stats, qui utilise la syntaxe suivante :

binom_test(x, n=Aucun, p=0,5, alternative=’deux faces’)

où:

  • x : nombre de « réussites »
  • n : nombre total d’essais
  • p : la probabilité de succès de chaque essai
  • alternative : l’hypothèse alternative. La valeur par défaut est « deux faces », mais vous pouvez également spécifier « supérieur » ou « moins ».

Cette fonction renvoie la valeur p du test. Nous pouvons charger cette fonction en utilisant la syntaxe suivante :

from scipy.stats import binom_test

Les exemples suivants illustrent comment effectuer des tests binomiaux en Python.

Exemple 1 : On lance 24 fois un dé à 6 faces et il atterrit sur le chiffre « 3 » exactement 6 fois. Effectuez un test binomial pour déterminer si le dé est biaisé vers le nombre « 3 ».

Les hypothèses nulles et alternatives de notre test sont les suivantes :

H 0 : π ≤ 1/6 (le dé n’est pas biaisé vers le nombre « 3 »)

H A : π > 1/6

*π est le symbole de la proportion de population.

Nous entrerons la formule suivante en Python :

binom_test(x=6, n=24, p=1/6, alternative='greater')

0.1995295129479586

Étant donné que cette valeur p (0,1995) n’est pas inférieure à 0,05, nous ne parvenons pas à rejeter l’hypothèse nulle. Nous n’avons pas suffisamment de preuves pour affirmer que le dé est biaisé en faveur du chiffre « 3 ».

Exemple 2 : Nous lançons une pièce 30 fois et elle tombe sur face exactement 19 fois. Effectuez un test binomial pour déterminer si la pièce est biaisée vers face.

Les hypothèses nulles et alternatives de notre test sont les suivantes :

H 0 : π ≤ 1/2 (la pièce n’est pas biaisée vers face)

H A : π > 1/2

Nous entrerons la formule suivante en Python :

binom_test(x=19, n=30, p=1/2, alternative='greater')

0.10024421103298661

Étant donné que cette valeur p (0,10024) n’est pas inférieure à 0,05, nous ne parvenons pas à rejeter l’hypothèse nulle. Nous n’avons pas suffisamment de preuves pour affirmer que la pièce est biaisée en faveur de face.

Exemple 3 : Une boutique fabrique des widgets avec une efficacité de 80 %. Ils mettent en œuvre un nouveau système qui, espèrent-ils, améliorera le taux d’efficacité. Ils sélectionnent au hasard 50 widgets issus d’une production récente et constatent que 47 d’entre eux sont efficaces. Effectuez un test binomial pour déterminer si le nouveau système conduit à une plus grande efficacité.

Les hypothèses nulles et alternatives de notre test sont les suivantes :

H 0 : π ≤ 0,80 (le nouveau système n’entraîne pas d’augmentation de l’efficacité)

H A : π > 0,80

Nous entrerons la formule suivante en Python :

binom_test(x=47, n=50, p=0.8, alternative='greater')

0.005656361012155314

Cette valeur p (0,00565) étant inférieure à 0,05, nous rejetons l’hypothèse nulle. Nous disposons de suffisamment de preuves pour affirmer que le nouveau système entraîne une augmentation de l’efficacité.

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *