Relación entre las distribuciones Binomial y de Poisson
Acabas de ver que la distribución de Poisson es el límite de la distribución Binomial para eventos raros. Esto tiene sentido si piensas en las historias. Supón que hacemos un ensayo de Bernoulli cada minuto durante una hora, cada uno con una probabilidad de éxito de 0.1. Haríamos 60 ensayos, el número de éxitos sigue una distribución Binomial y esperaríamos obtener unos 6 éxitos. Esto es como la historia de Poisson que comentamos en el vídeo, donde recibimos de media 6 visitas por hora en una web. Así, la distribución de Poisson con tasa de llegada igual a \(np\) aproxima a una distribución Binomial para \(n\) ensayos de Bernoulli con probabilidad \(p\) de éxito (con \(n\) grande y \(p\) pequeño). Es importante destacar que la distribución de Poisson suele ser más sencilla de manejar porque tiene un único parámetro en lugar de dos, como la Binomial.
Vamos a explorar estas dos distribuciones computacionalmente. Calcularás la media y la desviación estándar de muestras de una distribución de Poisson con una tasa de llegada de 10. Después, calcularás la media y la desviación estándar de muestras de una distribución Binomial con parámetros \(n\) y \(p\) tales que \(np = 10\).
Este ejercicio forma parte del curso
Pensamiento estadístico en Python (Parte 1)
Instrucciones del ejercicio
- Usando la función
rng.poisson(), extrae10000muestras de una distribución de Poisson con media10. - Crea una lista con los valores de
nypa considerar para la distribución Binomial. Eligen = [20, 100, 1000]yp = [0.5, 0.1, 0.01]para que \(np\) sea siempre 10. - Usando
rng.binomial()dentro delforproporcionado, extrae10000muestras de una distribución Binomial con cada parn, py muestra por pantalla la media y la desviación estándar de las muestras. Hay 3 paresn, p:20, 0.5,100, 0.1y1000, 0.01. Puedes acceder a ellos dentro del bucle comon[i], p[i].
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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))