Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment exécuter Grubbs’ Tester en Python



Le test de Grubbs est utilisé pour identifier la présence de valeurs aberrantes dans un ensemble de données. Pour utiliser ce test, un ensemble de données doit être approximativement distribué normalement et contenir au moins 7 observations.

Ce didacticiel explique comment effectuer le test de Grubbs en Python.

Test de Grubbs en Python

Pour effectuer le test de Grubbs en Python, nous pouvons utiliser la fonction smirnov_grubbs() du package outlier_utils , qui utilise la syntaxe suivante :

smirnov_grubbs.test (données, alpha = 0,05)

où:

  • data : un vecteur numérique de valeurs de données
  • alpha : Le niveau de signification à utiliser pour le test. La valeur par défaut est 0,05

Pour utiliser cette fonction, vous devez d’abord installer le package outlier_utils :

pip install outlier_utils

Une fois ce package installé, vous pouvez effectuer le test de Grubbs. Les exemples suivants illustrent comment procéder.

Exemple 1 : Test de Grubbs bilatéral

Le code suivant illustre comment effectuer un test de Grubbs bilatéral, qui détectera les valeurs aberrantes aux deux extrémités de l’ensemble de données.

import numpy as np
from outliers import smirnov_grubbs as grubbs

#define data
data = np.array([5, 14, 15, 15, 14, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40])

#perform Grubbs' test
grubbs.test(data, alpha=.05)

array([5, 14, 15, 15, 14, 19, 17, 16, 20, 22,  8, 21, 28, 11,  9, 29])

Cette fonction renvoie simplement un tableau sans les valeurs aberrantes. Dans ce cas, la valeur maximale de 40 était une valeur aberrante et a donc été supprimée.

Exemple 2 : Test de Grubbs unilatéral

Le code suivant illustre comment effectuer un test de Grubbs unilatéral pour la valeur minimale et la valeur maximale dans un ensemble de données :

import numpy as np
from outliers import smirnov_grubbs as grubbs

#define data
data = np.array([5, 14, 15, 15, 14, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40])

#perform Grubbs' test to see if minimum value is an outlier
grubbs.min_test(data, alpha=.05)

array([5, 14, 15, 15, 14, 19, 17, 16, 20, 22,  8, 21, 28, 11,  9, 29, 40])

#perform Grubbs' test to see if minimum value is an outlier
grubbs.max_test(data, alpha=.05)

array([5, 14, 15, 15, 14, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29])

Le test de valeur aberrante minimale n’a pas détecté la valeur minimale comme valeur aberrante. Cependant, le test de valeur aberrante maximale a déterminé que la valeur maximale de 40 était une valeur aberrante et a donc été supprimée.

Exemple 3 : Extraire l’index de la valeur aberrante

Le code suivant illustre comment extraire l’index de la valeur aberrante :

import numpy as np
from outliers import smirnov_grubbs as grubbs

#define data
data = np.array([5, 14, 15, 15, 14, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40])

#perform Grubbs' test and identify index (if any) of the outlier
grubbs.max_test_indices(data, alpha=.05)

[16]

Cela nous indique qu’il existe une valeur aberrante à la position d’index 16 du tableau.

Exemple 4 : Extraire la valeur de la valeur aberrante

Le code suivant illustre comment extraire la valeur de la valeur aberrante :

import numpy as np
from outliers import smirnov_grubbs as grubbs

#define data
data = np.array([5, 14, 15, 15, 14, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40])

#perform Grubbs' test and identify the actual value (if any) of the outlier
grubbs.max_test_outliers(data, alpha=.05)

[40]

Cela nous indique qu’il existe une valeur aberrante d’une valeur de 40.

Comment gérer les valeurs aberrantes

Si le test de Grubbs identifie une valeur aberrante dans votre ensemble de données, vous disposez de plusieurs options :

1. Vérifiez à nouveau que la valeur n’est pas une faute de frappe ou une erreur de saisie de données. Parfois, les valeurs qui apparaissent comme des valeurs aberrantes dans les ensembles de données sont simplement des fautes de frappe commises par un individu lors de la saisie des données. Tout d’abord, vérifiez que la valeur a été saisie correctement avant de prendre d’autres décisions.

2. Attribuez une nouvelle valeur à la valeur aberrante . Si la valeur aberrante s’avère être le résultat d’une faute de frappe ou d’une erreur de saisie de données, vous pouvez décider de lui attribuer une nouvelle valeur, telle que la moyenne ou la médiane de l’ensemble de données.

3. Supprimez la valeur aberrante. Si la valeur est réellement aberrante, vous pouvez choisir de la supprimer si elle aura un impact significatif sur votre analyse.

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *