Lien entre les lois binomiale et de Poisson
Vous venez d'apprendre que la loi de Poisson est une limite de la loi binomiale pour des événements rares. Cela a du sens si l'on pense aux histoires associées. Supposons que nous effectuions un essai de Bernoulli chaque minute pendant une heure, chacun avec une probabilité de succès de 0,1. Nous ferions 60 essais, et le nombre de succès suivrait une loi binomiale ; nous nous attendrions à environ 6 succès. C'est exactement comme l'histoire de la loi de Poisson vue dans la vidéo, où l'on observe en moyenne 6 visites par heure sur un site web. Ainsi, la loi de Poisson de taux d'arrivée égal à \(np\) approxime une loi binomiale pour \(n\) essais de Bernoulli avec une probabilité \(p\) de succès (avec \(n\) grand et \(p\) petit). Point important, la loi de Poisson est souvent plus simple à manipuler car elle n'a qu'un seul paramètre, contre deux pour la loi binomiale.
Explorons ces deux lois par le calcul. Vous allez calculer la moyenne et l'écart-type d'échantillons provenant d'une loi de Poisson avec un taux d'arrivée de 10. Ensuite, vous calculerez la moyenne et l'écart-type d'échantillons provenant d'une loi binomiale avec des paramètres \(n\) et \(p\) tels que \(np = 10\).
Cet exercice fait partie du cours
<cours>Réflexion statistique en Python (Partie 1)</cours>Instructions de l’exercice
- À l'aide de la fonction
rng.poisson(), tirez10000échantillons d'une loi de Poisson de moyenne10. - Créez une liste des valeurs de
netpà considérer pour la loi binomiale. Choisissezn = [20, 100, 1000]etp = [0.5, 0.1, 0.01]de sorte que \(np\) vaille toujours 10. - En utilisant
rng.binomial()dans la boucleforfournie, tirez10000échantillons d'une loi binomiale pour chaque pairen, pet affichez la moyenne et l'écart-type des échantillons. Il y a 3 pairesn, p:20, 0.5,100, 0.1et1000, 0.01. Elles sont accessibles dans la boucle vian[i], p[i].
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Draw 10,000 samples out of Poisson distribution: samples_poisson
# Print the mean and standard deviation
print('Poisson: ', np.mean(samples_poisson),
np.std(samples_poisson))
# Specify values of n and p to consider for Binomial: n, p
# Draw 10,000 samples for each n,p pair: samples_binomial
for i in range(3):
samples_binomial = ____
# Print results
print('n =', n[i], 'Binom:', np.mean(samples_binomial),
np.std(samples_binomial))