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 supprimer les valeurs aberrantes de plusieurs colonnes dans R



Souvent, vous souhaiterez peut-être supprimer les valeurs aberrantes de plusieurs colonnes à la fois dans R.

Une façon courante de définir une observation comme valeur aberrante est si elle est 1,5 fois l’intervalle interquartile supérieur au troisième quartile (Q3) ou 1,5 fois l’intervalle interquartile inférieur au premier quartile (Q1).

À l’aide de cette définition, nous pouvons utiliser les étapes suivantes pour créer une fonction simple permettant d’identifier les valeurs aberrantes, puis appliquer cette fonction sur plusieurs colonnes dans un bloc de données R.

Étape 1 : Créer un bloc de données.

Commençons par créer un bloc de données dans R :

df <- data.frame(index=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
                 var1=c(4, 4, 5, 4, 3, 2, 8, 9, 4, 5),
                 var2=c(1, 2, 4, 4, 6, 9, 7, 8, 5, 29),
                 var3=c(9, 9, 9, 5, 5, 3, 4, 5, 11, 34))

Étape 2 : Définir la fonction de valeur aberrante.

Définissons ensuite une fonction capable d’identifier les valeurs aberrantes et une fonction qui peut ensuite supprimer les valeurs aberrantes :

outliers <- function(x) {

  Q1 <- quantile(x, probs=.25)
  Q3 <- quantile(x, probs=.75)
  iqr = Q3-Q1

 upper_limit = Q3 + (iqr*1.5)
 lower_limit = Q1 - (iqr*1.5)

 x > upper_limit | x < lower_limit
}

remove_outliers <- function(df, cols = names(df)) {
  for (col in cols) {
    df <- df[!outliers(df[[col]]),]
  }
  df
}

Étape 3 : appliquez la fonction de valeur aberrante au bloc de données.

Enfin, appliquons cette fonction sur plusieurs colonnes du bloc de données pour supprimer les valeurs aberrantes :

remove_outliers(df, c('var1', 'var2', 'var3'))

  index var1 var2 var3
1     1    4    1    9
2     2    4    2    9
3     3    5    4    9
4     4    4    4    5
5     5    3    6    5
9     9    4    5   11

Vous pouvez trouver plus de didacticiels R ici .

Ajouter un commentaire

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