Maison > développement back-end > Tutoriel Python > Gestion des valeurs aberrantes en Python - Méthode IQR

Gestion des valeurs aberrantes en Python - Méthode IQR

Barbara Streisand
Libérer: 2024-10-11 10:45:30
original
660 Les gens l'ont consulté

Introduction

Avant de découvrir des informations à partir de données du monde réel, il est important d'examiner vos données pour garantir qu'elles sont cohérentes et exemptes d'erreurs. Cependant, les données peuvent contenir des erreurs et certaines valeurs peuvent sembler différer des autres valeurs. Ces valeurs sont appelées valeurs aberrantes. Les valeurs aberrantes ont un impact négatif sur l'analyse des données, conduisant à des informations erronées qui conduisent à une mauvaise prise de décision de la part des parties prenantes. Par conséquent, le traitement des valeurs aberrantes est une étape critique de l’étape de prétraitement des données en science des données. Dans cet article, nous évaluerons différentes manières de gérer les valeurs aberrantes.

Valeurs aberrantes

Les valeurs aberrantes sont des points de données qui diffèrent considérablement de la majorité des points de données d'un ensemble de données. Ce sont des valeurs qui se situent en dehors de la plage de valeurs attendue ou habituelle pour une variable particulière. des valeurs aberrantes se produisent pour diverses raisons, par exemple une erreur lors de la saisie des données, des erreurs d'échantillonnage. Dans le machine learning, les valeurs aberrantes peuvent amener vos modèles à faire des prédictions incorrectes, entraînant ainsi des prédictions inexactes.

Détection des valeurs aberrantes dans un ensemble de données à l'aide du notebook Jupyter

  • Importer des bibliothèques python
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
plt.style.use('ggplot')
Copier après la connexion
  • Chargez votre fichier csv à l'aide de pandas
df_house_price = pd.read_csv(r'C:\Users\Admin\Desktop\csv files\housePrice.csv')
Copier après la connexion
  • Vérifiez les cinq premières lignes de l'ensemble de données sur les prix de l'immobilier pour avoir un aperçu de votre datafrane
df_house_price.head()
Copier après la connexion

Handling Outliers in Python - IQR Method

  • Vérifiez les valeurs aberrantes dans la colonne des prix à l'aide d'un diagramme en boîte.
sns.boxplot(df_house_price['Price'])
plt.title('Box plot showing outliers in prices')
plt.show()
Copier après la connexion

Handling Outliers in Python - IQR Method

  • D'après la visualisation en boîte à moustaches, la colonne de prix a des valeurs aberrantes
  • Nous devons maintenant trouver des moyens de gérer ces valeurs aberrantes pour garantir une meilleure prise de décision et garantir que les modèles d'apprentissage automatique effectuent la prédiction correcte

Méthode IQR de gestion des valeurs aberrantes

  • La méthode IQR signifie que l'intervalle interquartile mesure la répartition de la moitié médiane de vos données. Il s'agit de la plage correspondant aux 50 % moyens de votre échantillon.

Étapes pour supprimer les valeurs aberrantes à l’aide de l’intervalle interquartile

  • Calculez le premier quartile (Q1) qui représente 25% des données et le troisième quartile (Q3) qui représente 75% des données.
Q1 = df_house_price['Price'].quantile(0.25)
Q3 = df_house_price['Price'].quantile(0.75)
Copier après la connexion
  • calculer l'intervalle interquartile
IQR = Q3 - Q1
Copier après la connexion
  • Déterminez les limites des valeurs aberrantes.
lower_bound = Q1 - 1.5 * IQR
Copier après la connexion

Handling Outliers in Python - IQR Method

  • La limite inférieure signifie que toute valeur inférieure à -5454375000.0 est une valeur aberrante
upper_bound = Q3 + 1.5 * IQR
Copier après la connexion

Handling Outliers in Python - IQR Method

  • La limite supérieure signifie que toute valeur supérieure à 12872625000,0 est une valeur aberrante

  • Supprimer les valeurs aberrantes dans la colonne prix

filt = (df_house_price['Price'] >= lower_bound) & (df_house_price['Price'] <= upper_bound)

df = df_house_price[filt]
df.head()
Copier après la connexion

Handling Outliers in Python - IQR Method

  • Box plot Après avoir supprimé les valeurs aberrantes
sns.boxplot(df['Price'])
plt.title('Box plot after removing outliers')
plt.show()
Copier après la connexion

Handling Outliers in Python - IQR Method

Différentes méthodes de gestion des valeurs aberrantes

  • Méthode Z-Score
  • Limitation des percentiles (Winsorizing)
  • Découpage (troncature)
  • Imputation
  • Méthodes basées sur le clustering, par exemple DBSCAN

Conclusion

La méthode IQR est simple et robuste aux valeurs aberrantes et ne dépend pas de l'hypothèse de normalité. L'inconvénient est qu'il ne peut gérer que des données univariées et qu'il peut supprimer des points de données valides si les données sont asymétriques ou ont des queues lourdes.

Merci
suivez-moi sur linked in et sur github pour en savoir plus.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal