SciPy – Pruebas de significación estadística

En probabilidad y estadística, tendemos a calcular muchos números diferentes, el trabajo no termina ahí, es muy esencial interpretar estadísticamente los números para comprender la importancia de ese número para el problema particular en cuestión. En estadística, existen pocas técnicas para evaluar la importancia de estos números. En el artículo, analicemos algunas de las pruebas de importancia estadística compatibles con el paquete de Python.

Algunas de las pruebas de significación estadística prominentes y ampliamente utilizadas son las siguientes:

Términos estadísticos descriptivos

La media, la mediana, la moda, la varianza y la desviación estándar se denominan popularmente medidas de centralidad y dispersión. Tiene que ser el primer paso en cualquier análisis de datos estadísticos.

La asimetría y la curtosis son dos pruebas que comprueban la normalidad. Si Skwness es 0 y la curtosis es 3, significa que la distribución de datos es perfectamente normal (simétrica). Si concluimos que la distribución es normal, podemos inferir muchos otros parámetros sobre la distribución.

Si el valor de la asimetría es negativo, entonces los datos están sesgados a la izquierda y si el valor es positivo, los datos están sesgados a la derecha. De manera similar, la curtosis positiva indica una distribución de colas pesadas y viceversa.

Python3

import numpy as np
from scipy.stats import describe
 
v = np.random.normal(size=100)
result = describe(v)
 
print(result)

Producción:

 

Pruebas de hipótesis

La prueba de hipótesis es una prueba estadística que utiliza datos de una muestra para sacar conclusiones sobre un parámetro de población. La prueba de hipótesis se lleva a cabo definiendo un experimento y probando la importancia estadística de la suposición.

Hipótesis nula Ho: Supone que no existe ninguna relación estadística y significancia en un conjunto de variables observadas únicas dadas.

Hipótesis alternativa H1: asume que existe una relación estadística de una sola variable observada. 

Los parámetros de las pruebas de hipótesis incluyen valores p y valores alfa (que especifican el nivel de significación). El valor p mide la probabilidad de obtener un valor más extremo que el obtenido en el experimento. Alfa, el nivel de significancia, es la probabilidad de que cometas el error de rechazar la hipótesis nula cuando en realidad es cierta. Si el valor p <= alfa, rechazamos la hipótesis nula y decimos que los datos son estadísticamente significativos. caso contrario, aceptamos la hipótesis nula. 

La prueba de hipótesis es de dos tipos:

  • Prueba de una cola
  • prueba de dos colas

Prueba de una cola

Una prueba unilateral es una prueba estadística en la que el área crítica de una distribución es unilateral, de modo que es mayor o menor que cierto valor, pero no ambos.

Prueba de dos colas

Una prueba de dos colas es un método en el que el área crítica de una distribución es de dos colas y prueba si una muestra es mayor o menor que un cierto rango de valores.

Ahora, usemos este concepto de prueba de hipótesis para demostrar la prueba t.

Prueba T

La prueba T se utiliza para determinar si existe una diferencia significativa entre las medias de dos grupos en el estudio. Esta prueba asume que los datos siguen la distribución t, que es una ligera variación de la distribución normal.

Ejemplo: Intentemos probar la siguiente suposición. Digamos que una empresa llamada ‘X’ desea probar si las ventas medias se ven afectadas al agregar una salsa de chipotle en su plato más vendido. Ahora, formulemos una hipótesis para este problema.

Hipótesis nula Ho:   La media de ventas no se ve afectada por agregar la salsa de chipotle μ1 = μ2

Hipótesis alternativa H1: La media de ventas se ve afectada por agregar la salsa de chipotle μ1 != μ2

El intervalo de confianza se elige como 95% para este problema, por lo que el valor alfa = 0,05. Sabemos que si p <= alfa rechaza la hipótesis nula. Usamos la función ttest_ind() en scipy para realizar la prueba t como se muestra a continuación.

Python3

from scipy import stats
 
sales_with_chipotle = [13.4, 10.9, 11.2, 11.8,
                       14, 15.3, 14.2, 12.6,
                       17, 16.2, 16.5, 15.7]
 
sales_without_chipotle = [12, 11.7, 10.7, 11.2,
                          14.8, 14.4, 13.9, 13.7,
                          16.9, 16, 15.6, 16]
 
t_value, p_value = stats.ttest_ind(sales_with_chipotle,
                                   sales_without_chipotle)
 
print('Test statistic is %f' % float("{:.6f}".format(t_value)))
print('p-value for two tailed test is %f' % p_value)
 
alpha = 0.05
if p_value <= alpha:
 
    print('Conclusion', 'n', 'Since p-value(=%f)' % p_value,
          '<', 'alpha(=%.2f)' % alpha,
          '''We reject the null hypothesis H0. \
          So we conclude that the \
          Mean sales is affected by \
          adding chipotle sauce to the best\
          selling ingredient i.e., μ1 = μ2 at \
          %.2f level of significance.''' % alpha)
 
else:
 
    print('Conclusion', 'n', 'Since p-value(=%f)' % p_value,
          '>', 'alpha(=%.2f)' % alpha,
          'We fail to reject the null \
          hypothesis H0, which signifies \
          the Mean of sales is not affected\
          by adding chipotle sauce.')

Producción:

 

prueba de kolmogorov smirnoff

La prueba de Kolmogorov-Smirnov se utiliza para probar la hipótesis nula de que un conjunto de datos proviene de una distribución similar. Prueba KS Realiza la prueba de bondad de ajuste de una o dos muestras. La prueba de una muestra compara la distribución subyacente F(x) de una muestra con una distribución dada G(x). La prueba de dos muestras compara las distribuciones subyacentes de dos muestras independientes. Ambas pruebas son válidas sólo para distribuciones continuas.

Ejemplo: Aquí hemos generado una muestra de 1000 valores que sigue una distribución uniforme utilizando una función aleatoria. Luego importamos la función kstest() para probar si la función aleatoria genera correctamente la distribución uniforme. Elijamos el valor alfa como 0.05

Hipótesis Nula Ho: La distribución sigue una distribución uniforme

Hipótesis alternativa H1: La distribución no sigue una distribución uniforme.

El valor p se calcula utilizando estadísticas de prueba devueltas por la función kstest. Si pvalue> alfa, no rechazamos la hipótesis nula, sino aceptamos la hipótesis alternativa

Python3

import numpy as np
from scipy.stats import kstest
 
v = np.random.uniform(size=1000)
 
res = kstest(v, 'uniform')
 
print(res)
       
alpha = 0.05
 
if res[1] > alpha:
    print('We fail to reject the null hypothesis because \
    the p-value {res[1]} > alpha, which means the\
    distribution follows the uniform distribution')
 
else:
    print('We  reject the null hypothesis because\
    the p-value {res[1]} < alpha, which means the\
    distribution doesn"t follows the uniform distribution')

Producción:

 

Publicación traducida automáticamente

Artículo escrito por jssuriyakumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *