Jak przeprowadzić wielowymiarowe testy normalności w pythonie
Kiedy chcemy sprawdzić, czy pojedyncza zmienna ma rozkład normalny, czy nie, możemy utworzyć Wykres QQ w celu wizualizacji rozkładu lub możemy wykonać formalny test statystyczny, taki jak test Andersona Darlinga lub test Jarque-Bera .
Jeśli jednak chcemy sprawdzić, czy wiele zmiennych ma rozkład normalny jako grupa, musimy przeprowadzić wielowymiarowy test normalności .
W tym samouczku wyjaśniono, jak przeprowadzić wielowymiarowy test normalności Henzego-Zirklera dla danego zbioru danych w języku Python.
Powiązane: Jeśli chcemy zidentyfikować wartości odstające w kontekście wielu zmiennych, możemy użyć odległości Mahalanobisa .
Przykład: wielowymiarowy test normalności Henzego-Zirklera w Pythonie
Wielowymiarowy test normalności Henzego-Zirklera określa, czy grupa zmiennych ma wielowymiarowy rozkład normalny. Hipotezy zerowe i alternatywne testu są następujące:
H 0 (null): Zmienne mają wielowymiarowy rozkład normalny.
H a (alternatywa): Zmienne nie mają wielowymiarowego rozkładu normalnego.
Aby wykonać ten test w Pythonie, możemy użyć funkcji multivariate_normality() z biblioteki penguin.
Najpierw musimy zainstalować pingwina:
pip install penguin
Następnie możemy zaimportować funkcję multivariate_normality() i użyć jej do przeprowadzenia wielowymiarowego testu normalności dla danego zbioru danych:
#import necessary packages from penguin import multivariate_normality import pandas as pd import numpy as np #create a dataset with three variables x1, x2, and x3 df = pd.DataFrame({'x1':np.random.normal(size= 50 ), 'x2': np.random.normal(size= 50 ), 'x3': np.random.normal(size= 50 )}) #perform the Henze-Zirkler Multivariate Normality Test multivariate_normality(df, alpha= .05 ) HZResults(hz=0.5956866563391165, pval=0.6461804077893423, normal=True)
Wyniki testu są następujące:
- Statystyka testowa Hz: 0,59569
- Wartość p: 0,64618
Ponieważ wartość p testu jest nie mniejsza niż określona przez nas wartość alfa wynosząca 0,05, nie możemy odrzucić hipotezy zerowej. Można założyć, że zbiór danych ma wielowymiarowy rozkład normalny.
Powiązane: Z tego artykułu badawczego dowiesz się, jak test Henzego-Zirklera jest wykorzystywany w rzeczywistych zastosowaniach medycznych.