Cómo usar la distribución binomial en Python

Puedes opinar sobre este contenido:
  • 0
  • 0
  • 0
  • 0

La distribución binomial es una de las distribuciones más utilizadas en estadística. Describe la probabilidad de obtener k éxitos en n experimentos binomiales.

Si una variable aleatoria X sigue una distribución binomial, entonces la probabilidad de que X = k éxitos se puede encontrar mediante la siguiente fórmula:

P (X = k) = n C k * p k * (1-p) nk

dónde:

  • n: número de ensayos
  • k: número de éxitos
  • p: probabilidad de éxito en una prueba determinada
  • n C k : el número de formas de obtener k éxitos en n ensayos

Este tutorial explica cómo usar la distribución binomial en Python.

Cómo generar una distribución binomial

Puede generar una matriz de valores que siguen una distribución binomial utilizando la función random.binomial de la biblioteca numpy:

from numpy import random
 # genera una matriz de 10 valores que siguen una distribución binomial
random.binomial (n = 10, p = .25, size = 10)

matriz ([5, 2, 1, 3, 3, 3, 2, 2, 1, 4])

Cada número de la matriz resultante representa el número de «éxitos» experimentados durante 10 ensayos en los que la probabilidad de éxito en un ensayo determinado fue de 0,25 .

Cómo calcular probabilidades usando una distribución binomial

También puede responder preguntas sobre probabilidades binomiales utilizando la función binom de la biblioteca scipy.

Pregunta 1: Nathan acelera el 60% de sus tiros libres. Si lanza 12 tiros libres, ¿cuál es la probabilidad de que haga exactamente 10?

desde scipy.stats importar binom

#calcular la probabilidad binomial 
binom.pmf (k = 10 , n = 12 , p = 0.6 )

0.0639

La probabilidad de que Nathan haga exactamente 10 tiros libres es 0.0639 .

Pregunta 2: Marty lanza una moneda justa 5 veces. ¿Cuál es la probabilidad de que la moneda caiga en cara 2 veces o menos?

desde scipy.stats importar binom

#calcular la probabilidad binomial 
binom.cdf (k = 2 , n = 5 , p = 0.5 )

0,5

La probabilidad de que la moneda caiga en cara 2 veces o menos es 0,5 .

Pregunta 3: Se sabe que el 70% de las personas apoyan una determinada ley. Si se seleccionan al azar 10 individuos, ¿cuál es la probabilidad de que entre 4 y 6 de ellos apoyen la ley?

desde scipy.stats importar binom

#calcular la probabilidad binomial 
binom.cdf (k = 6 , n = 10 , p = 0,7 ) - binom.cdf (k = 3 , n = 10 , p = 0,7 )

0.3398

La probabilidad de que entre 4 y 6 de los individuos seleccionados al azar apoyen la ley es 0.3398 .

Cómo visualizar una distribución binomial

Puede visualizar una distribución binomial en Python utilizando las bibliotecas seaborn y matplotlib :

de numpy importación aleatoria
 importación matplotlib.pyplot como PLT
 importación Seaborn como SNS

x = random.binomial (n = 10 , p = 0.5 , tamaño = 1000 )

sns.distplot (x, hist = True , kde = False )

plt.show ()

Gráfico de distribución binomial en Python

El eje x describe el número de éxitos durante 10 ensayos y el eje y muestra el número de veces que ocurrió cada número de éxitos durante 1000 experimentos.

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

Deja un comentario

Siempre que realice una prueba de chi-cuadrado, terminará con una estadística de prueba de chi-cuadrado. Luego, puede encontrar el valor…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!