R : Comment supprimer des lignes contenant une chaîne spécifique



Vous pouvez utiliser la syntaxe suivante pour supprimer les lignes contenant une certaine chaîne dans un bloc de données dans R :

df[!grepl('string', df$column),]

Ce didacticiel fournit plusieurs exemples d’utilisation pratique de cette syntaxe avec le bloc de données suivant dans R :

#create data frame
df <- data.frame(team=c('A', 'A', 'A', 'B', 'B', 'C'),
                 conference=c('East', 'East', 'East', 'West', 'West', 'East'),
                 points=c(11, 8, 10, 6, 6, 5))

#view data frame
df

  team conference points
1    A       East     11
2    A       East      8
3    A       East     10
4    B       West      6
5    B       West      6
6    C       East      5

Exemple 1 : supprimer les lignes contenant une chaîne spécifique

Le code suivant montre comment supprimer toutes les lignes du bloc de données qui contiennent « A » dans la colonne d’équipe :

df[!grepl('A', df$team),]

  team conference points
4    B       West      6
5    B       West      6
6    C       East      5

Ou nous pourrions supprimer toutes les lignes du bloc de données qui contiennent « Ouest » dans la colonne de conférence :

df[!grepl('West', df$conference),]

  team conference points
1    A       East     11
2    A       East      8
3    A       East     10
6    C       East      5

Exemple 2 : supprimer les lignes contenant une chaîne dans une liste

Le code suivant montre comment supprimer toutes les lignes du bloc de données qui contiennent « A » ou « B » dans la colonne d’équipe :

df[!grepl('A|B', df$team),]

6    C       East      5

Nous pourrions également définir un vecteur de chaînes, puis supprimer toutes les lignes du bloc de données contenant l’une des chaînes du vecteur dans la colonne d’équipe :

#define vector of strings
remove <- c('A', 'B')

#remove rows that contain any string in the vector in the team column
df[!grepl(paste(remove, collapse='|'), df$team),]

6    C       East      5

Notez que les deux méthodes conduisent au même résultat.

Ressources additionnelles

Comment supprimer des lignes avec certains ou tous les NA dans R
Comment supprimer les lignes en double dans R
Comment additionner des lignes spécifiques dans R

Ajouter un commentaire

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