ANOVA de Welch en Python (paso a paso)

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

El ANOVA de Welch es una alternativa al ANOVA unidireccional típico cuando se viola el supuesto de varianzas iguales .

El siguiente ejemplo paso a paso muestra cómo realizar el ANOVA de Welch en Python.

Paso 1: crear los datos

Para determinar si tres técnicas de estudio diferentes conducen a puntajes de exámenes diferentes, un profesor asigna aleatoriamente a 10 estudiantes para que usen cada técnica (Técnica A, B o C) durante una semana y luego hace que cada estudiante tome un examen de igual dificultad.

Los puntajes de los exámenes de los 30 estudiantes se muestran a continuación:

A = [64, 66, 68, 75, 78, 94, 98, 79, 71, 80]
B = [91, 92, 93, 90, 97, 94, 82, 88, 95, 96]
C = [79, 78, 88, 94, 92, 85, 83, 85, 82, 81]

Paso 2: Prueba de varianzas iguales

A continuación, podemos realizar la prueba de Bartlett para determinar si las varianzas entre cada grupo son iguales.

Si el valor p del estadístico de prueba es menor que algún nivel de significancia (como α = .05), entonces podemos rechazar la hipótesis nula y concluir que no todos los grupos tienen la misma varianza.

Podemos usar el siguiente código para realizar la prueba de Bartlett en Python:

import scipy. estadísticas  como estadísticas

#realiza las estadísticas de prueba de Bartlett 
 . Bartlett (A, B, C)

BartlettResult (estadístico = 9.039674395, pvalue = 0.010890796567)

El valor p ( .01089 ) de la prueba de Bartlett es menor que α = .05, lo que significa que podemos rechazar la hipótesis nula de que cada grupo tiene la misma varianza.

Por lo tanto, se viola el supuesto de varianzas iguales y podemos proceder a realizar el ANOVA de Welch.

Paso 3: Realice el ANOVA de Welch

Para realizar el ANOVA de Welch en Python, podemos usar la función welch_anova () del paquete Pingouin.

Primero, necesitamos instalar Pingouin:

pip instalar Pingouin

A continuación, podemos usar el siguiente código para realizar el ANOVA de Welch:

importar pingouin como pg 
importar pandas como pd
 importar numpy como np

#create DataFrame
 df = pd. DataFrame ({' puntuación ': [64, 66, 68, 75, 78, 94, 98, 79, 71, 80,
                             91, 92, 93, 90, 97, 94, 82, 88, 95, 96,
                             79, 78, 88, 94, 92, 85, 83, 85, 82, 81],
                   ' grupo ': np. repetir (['a', 'b', 'c'], repeats = 10 )})

# realizar el ANOVA de Welch
 pág. welch_anova (dv = ' puntuación ', entre = ' grupo ', datos = df)

        Fuente ddof1 ddof2 F p-unc np2
0 grupo 2 16.651295 9.717185 0.001598 0.399286

El valor p general ( .001598 ) de la tabla ANOVA es menor que α = .05, lo que significa que podemos rechazar la hipótesis nula de que los puntajes del examen son iguales entre las tres técnicas de estudio.

Luego podemos realizar la prueba post-hoc de Games-Howell para determinar exactamente qué medias de grupo son diferentes:

pág. pairwise_gameshowell (dv = ' puntuación ', entre = ' grupo ', datos = df)


        A B media (A) media (B) dif se T df pval	
0 a b 77,3 91,8 -14,5 3,843754 -3,772354 11,6767 0,0072
1 a c 77,3 84,7 -7,4 3,952777 -1,872102 12,7528 0,1864
2 b c 91,8 84,7 7,1 2,179959 3,256942 17,4419 0,0119

A partir de los valores de p, podemos ver que la diferencia media entre los grupos a y b son significativamente diferentes y la diferencia media entre los grupos b y c son significativamente diferentes.

Recursos adicionales

Cómo realizar un ANOVA unidireccional en Python
Cómo realizar un ANOVA bidireccional en Python
Cómo realizar un ANOVA de medidas repetidas en Python

  • 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

El muestreo de hipercubo latino es un método que se puede utilizar para muestrear números aleatorios en los que las…
statologos comunidad-2

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

You have Successfully Subscribed!