# Importa las bibliotecas necesarias
import numpy as np
import pandas as pd
from scipy.stats import f_oneway
from scipy.stats import ttest_rel
from statsmodels.stats.anova import AnovaRM
¿Que es?: La prueba t para muestras relacionadas, también conocida como t de Student para muestras pareadas, se utiliza para comparar las medias de dos conjuntos de datos relacionados. En el ejemplo, se compara un conjunto de datos antes de un tratamiento con otro conjunto después del tratamiento.
¿Para qué sirve?: Esta prueba es útil cuando estás interesado en determinar si hay una diferencia significativa entre las medias de dos conjuntos de datos relacionados. Puede ser aplicada en situaciones donde las mediciones se realizan en los mismos individuos o elementos en diferentes momentos.
¿Cuándo debe utilizarse?: Deberías utilizar la prueba t para muestras relacionadas cuando tengas dos conjuntos de datos emparejados y estés interesado en evaluar si hay evidencia estadística de que hay una diferencia significativa entre las medias de las dos poblaciones.
Hipótesis de una cola (unilateral):1. Hipótesis de una cola (unilateral):
Hipótesis de dos colas (bilateral):
Cuando:
# Genera dos conjuntos de datos relacionados (antes y después de un tratamiento, por ejemplo)
antes_tratamiento = np.array([25, 28, 30, 35, 27])
despues_tratamiento = np.array([22, 30, 32, 38, 29])
# Realiza la prueba t para muestras relacionadas
statistic, p_valor = ttest_rel(antes_tratamiento, despues_tratamiento)
# Imprime los resultados
print("Estadístico de prueba t:", statistic)
print("Valor p:", p_valor)
# Interpreta los resultados
if p_valor < 0.05:
print("Hay evidencia estadística para rechazar la hipótesis nula.")
else:
print("No hay suficiente evidencia para rechazar la hipótesis nula.")
¿Qué es?: El análisis de varianza (ANOVA) y la prueba F se utilizan para comparar las medias de más de dos grupos. En el ejemplo, se tienen tres grupos diferentes ('grupo1', 'grupo2', 'grupo3') y se realiza una prueba F para determinar si hay diferencias significativas entre las medias.
¿Para qué sirve?: El ANOVA es útil cuando se tienen varios grupos y se desea saber si al menos uno de ellos tiene una media significativamente diferente. La prueba F se utiliza para evaluar si las varianzas entre los grupos son significativamente diferentes.
¿Cuándo debe utilizarse?: Deberías utilizar ANOVA y la prueba F cuando tengas más de dos grupos y desees evaluar si hay diferencias significativas entre al menos dos de ellos. Si el resultado de ANOVA indica que hay diferencias significativas, se pueden realizar pruebas post hoc para identificar qué grupos difieren entre sí.
Hipótesis de una cola (unilateral):
Hipótesis de dos colas (bilateral):
Cuando:
# Genera tres conjuntos de datos para el ejemplo (puedes adaptar esto según tus datos)
grupo1 = np.array([30, 35, 28, 32, 38])
grupo2 = np.array([25, 27, 30, 34, 29])
grupo3 = np.array([22, 26, 24, 28, 30])
# Realiza la prueba de ANOVA
estadistico_anova, p_valor_anova = f_oneway(grupo1, grupo2, grupo3)
# Imprime los resultados
print("Estadístico de prueba ANOVA:", estadistico_anova)
print("Valor p ANOVA:", p_valor_anova)
# Interpreta los resultados
if p_valor_anova < 0.05:
print("Hay evidencia estadística para rechazar la hipótesis nula.")
else:
print("No hay suficiente evidencia para rechazar la hipótesis nula.")
¿Qué es?: El análisis de varianza de doble vía (ANOVA de doble vía) y la prueba F se utilizan para comparar las medias cuando hay dos factores o variables independientes. En el ejemplo, se tienen dos factores ('Tratamiento' y 'Género').
¿Para qué sirve?: El ANOVA de doble vía es útil cuando deseas evaluar la influencia de dos factores simultáneamente en la variabilidad de los datos. Permite determinar si hay interacciones significativas entre los factores y cómo afectan a la variable de interés.
¿Cuándo debe utilizarse?: Deberías utilizar el ANOVA de doble vía cuando tengas dos factores que crees que pueden influir en la variable de interés y desees examinar cómo interactúan entre sí. Esta prueba es apropiada cuando los datos se pueden clasificar en dos dimensiones, por ejemplo, tratamientos y género en el ejemplo proporcionado.
Hipótesis de una cola (unilateral) para cada factor:
Hipótesis de dos colas (bilateral) para cada factor:
Cuando:
# Genera datos de ejemplo con dos factores: 'Tratamiento' y 'Género'
np.random.seed(42)
# Crear un DataFrame con datos de ejemplo
datos = pd.DataFrame({
'Tratamiento': np.repeat(['A', 'B', 'C'], 20),
'Género': np.tile(['Hombre', 'Mujer'], 30),
'Resultado': np.random.normal(loc=50, scale=10, size=60)
})
# Agrega los datos para manejar múltiples observaciones por sujeto y celda
datos_agregados = datos.groupby(['Tratamiento', 'Género']).agg({'Resultado': 'mean'}).reset_index()
# Realiza un ANOVA de doble vía usando scipy.stats
modelo_anova_scipy = AnovaRM(data=datos_agregados, depvar='Resultado', subject='Género', within=['Tratamiento'])
resultado_anova_scipy = modelo_anova_scipy.fit()
# Imprime los resultados usando scipy.stats
print("ANOVA de doble vía usando scipy.stats:")
print(resultado_anova_scipy)