Comment supprimer le premier caractère des chaînes à l’aide de dplyr



Vous pouvez utiliser la syntaxe de base suivante dans dplyr pour supprimer le premier caractère de chaque chaîne dans une colonne particulière :

library(dplyr)

df_new <- df %>% mutate(across(c('my_column'), substr, 2, nchar(my_column)))

Cette syntaxe particulière supprime le premier caractère de chaque chaîne de la colonne appelée my_column .

Notez que nous utilisons la fonction substr() pour extraire la sous-chaîne allant du deuxième caractère de chaque chaîne jusqu’à la longueur de la chaîne.

Cela a pour effet de supprimer le premier caractère de la chaîne.

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : supprimer le premier caractère des chaînes à l’aide de dplyr

Supposons que nous ayons le bloc de données suivant dans R :

#create data frame
df <- data.frame(team=c('XMavs', 'XPacers', 'XHawks', 'XKings', 'XNets', 'XCeltics'),
                 points=c(104, 110, 134, 125, 114, 124))

#view data frame
df

      team points
1    XMavs    104
2  XPacers    110
3   XHawks    134
4   XKings    125
5    XNets    114
6 XCeltics    124

Supposons que nous souhaitions supprimer le premier caractère de chaque chaîne de la colonne équipe .

Nous pouvons utiliser la syntaxe suivante pour ce faire :

library(dplyr)

#remove first character from each string in 'team' column
df_new <- df %>% mutate(across(c('team'), substr, 2, nchar(team)))

#view updated data frame
df_new

     team points
1    Mavs    104
2  Pacers    110
3   Hawks    134
4   Kings    125
5    Nets    114
6 Celtics    124

Notez que le premier caractère de chaque chaîne de la colonne équipe a été supprimé.

Notez que la fonction nchar() est utilisée pour calculer le nombre total de caractères dans une chaîne.

Ainsi, nous utilisons la fonction substr() pour extraire la sous-chaîne allant du deuxième caractère au dernier caractère de chaque chaîne, ce qui équivaut à supprimer le premier caractère de chaque chaîne.

Remarque : Si vous souhaitez supprimer le premier caractère des chaînes de plusieurs colonnes, incluez simplement plusieurs noms de colonnes dans la fonction across() .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans dplyr :

Comment supprimer des lignes à l’aide de dplyr
Comment sélectionner des colonnes par index à l’aide de dplyr
Comment filtrer les lignes contenant une certaine chaîne à l’aide de dplyr

Ajouter un commentaire

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