Cómo realizar pruebas de normalidad multivariante en Python

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

Actualizado el 17 de julio de 2024, por Luis Benites.

Cuando nos gustaría probar si una sola variable está distribuida normalmente o no, podemos crear un gráfico Q-Q para visualizar la distribución o podemos realizar una prueba estadística formal como una prueba de Anderson Darling o una prueba de Jarque-Bera .

Sin embargo, cuando nos gustaría probar si varias variables se distribuyen normalmente como un grupo, debemos realizar una prueba de normalidad multivariante .

Este tutorial explica cómo realizar la prueba de normalidad multivariante Henze-Zirkler para un conjunto de datos determinado en Python.

Relacionado: si quisiéramos identificar valores atípicos en una configuración multivariante, podemos usar la distancia de Mahalanobis .

Ejemplo: prueba de normalidad multivariante de Henze-Zirkler en Python

La prueba de normalidad multivariada de Henze-Zirkler determina si un grupo de variables sigue una distribución normal multivariada o no. Las hipótesis nula y alternativa para la prueba son las siguientes:

H 0 (nulo): Las variables siguen una distribución normal multivariante.

H a (alternativa): las variables no siguen una distribución normal multivariante.

Para realizar esta prueba en Python podemos usar la función multivariate_normality () de la biblioteca pingouin.

Primero, necesitamos instalar pingouin:

pip instalar pingouin

A continuación, podemos importar la función multivariate_normality () y usarla para realizar una prueba multivariante de normalidad para un conjunto de datos determinado:


#importar los paquetes necesarios de pingouin import multivariate_normality
 import pandas as pd
 import numpy as np

# crear un conjunto de datos con tres variables x1, x2 y x3
 df = pd.DataFrame ({'x1': np.random.normal (size = 50 ),
                   'x2': np.random.normal (tamaño = 50 ),
                   'x3': np.random.normal (tamaño = 50 )})

#realice la prueba de normalidad multivariante de Henze-Zirkler 
multivariate_normality (df, alpha = .05 )

HZResults (hz = 0.5956866563391165, pval = 0.6461804077893423, normal = True)

Los resultados de la prueba son los siguientes:

  • Estadística de prueba HZ: 0.59569
  • valor p: 0,64618

Dado que el valor p de la prueba no es menor que nuestro valor alfa especificado de .05, no rechazamos la hipótesis nula. Se puede suponer que el conjunto de datos sigue una distribución normal multivariante.

Relacionado: Aprenda cómo se usa la prueba de Henze-Zirkler en aplicaciones médicas de la vida real en este artículo de investigación .

  • 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

Hay dos formas de cambiar las etiquetas de los ejes en una gráfica nacida en el mar. La primera forma…
statologos comunidad-2

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

You have Successfully Subscribed!