Cómo realizar una prueba binomial en Python

Una prueba binomial compara una proporción muestral con una proporción hipotética.

Por ejemplo, supongamos que tenemos un dado de 6 caras. Si lo tiramos 12 veces, esperaríamos que el número «3» aparezca 1/6 de las veces, lo que sería 12 * (1/6) = 2 veces.

Si el número «3» en realidad aparece 4 veces, ¿es evidencia de que el dado está sesgado hacia el número «3»? Podríamos realizar una prueba binomial para responder esa pregunta.

En Python, podemos realizar una prueba binomial usando la función binom_test () de la biblioteca scipy.stats, que usa la siguiente sintaxis:

binom_test (x, n = Ninguno, p = 0.5, alternativa = ‘bilateral’)

dónde:

  • x: número de «éxitos»
  • n: número total de ensayos
  • p: la probabilidad de éxito en cada prueba
  • alternativa: la hipótesis alternativa. El valor predeterminado es «dos caras», pero también puede especificar «mayor» o «menor».

Esta función devuelve el valor p de la prueba. Podemos cargar esta función usando la siguiente sintaxis:

de scipy.stats  importar  binom_test

Los siguientes ejemplos ilustran cómo realizar pruebas binomiales en Python.

Ejemplo 1: Lanzamos un dado de 6 caras 24 veces y cae en el número «3» exactamente 6 veces. Realice una prueba binomial para determinar si el dado está sesgado hacia el número «3».

Las hipótesis nula y alternativa para nuestra prueba son las siguientes:

H 0 : π ≤ 1/6 (el dado no está sesgado hacia el número «3»)

H A : π> 1/6

* π es el símbolo de la proporción de población.

Ingresaremos la siguiente fórmula en Python:

binom_test (x = 6 , n = 24 , p = 1/6 , alternativa = ' mayor ')

0.1995295129479586

Debido a que este valor p (0.1995) no es menor que 0.05, no rechazamos la hipótesis nula. No tenemos pruebas suficientes para decir que el dado está sesgado hacia el número «3».

Ejemplo 2: Lanzamos una moneda 30 veces y cae cara exactamente 19 veces. Realice una prueba binomial para determinar si la moneda está sesgada hacia caras.

Las hipótesis nula y alternativa para nuestra prueba son las siguientes:

H 0 : π ≤ 1/2 (la moneda no está sesgada hacia caras)

H A : π> 1/2

Ingresaremos la siguiente fórmula en Python:

binom_test (x = 19 , n = 30 , p = 1/2 , alternativa = ' mayor ')

0.10024421103298661

Debido a que este valor p (0.10024) no es menor que 0.05, no rechazamos la hipótesis nula. No tenemos evidencia suficiente para decir que la moneda está sesgada hacia caras.

Ejemplo 3: una tienda fabrica widgets con un 80% de efectividad. Implementan un nuevo sistema que esperan mejorará la tasa de efectividad. Seleccionan al azar 50 widgets de una producción reciente y descubren que 47 de ellos son efectivos. Realice una prueba binomial para determinar si el nuevo sistema conduce a una mayor efectividad.

Las hipótesis nula y alternativa para nuestra prueba son las siguientes:

H 0 : π ≤ 0,80 (el nuevo sistema no aumenta la eficacia)

H A : π> 0,80

Ingresaremos la siguiente fórmula en Python:

binom_test (x = 47 , n = 50 , p = 0.8 , alternativa = ' mayor ')

0,005656361012155314

Debido a que este valor p (0.00565) es menor que 0.05, rechazamos la hipótesis nula. Tenemos evidencia suficiente para decir que el nuevo sistema conduce a un aumento de la eficacia.

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

Redactor del artículo

  • Luis Benites
    Directo & CEO de Statologos LSI

    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

Deja un comentario

Una de las métricas más comunes que se utilizan para medir la precisión del pronóstico de un modelo es MSE…
statologos comunidad-2

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

You have Successfully Subscribed!