Comment utiliser str_sub dans R (avec exemples)



La fonction str_sub() du package stringr dans R peut être utilisée pour extraire ou remplacer des sous-chaînes dans une chaîne.

Cette fonction utilise la syntaxe suivante :

str_sub(chaîne, début, fin)

où:

  • chaîne : vecteur de caractères
  • start : Position du premier caractère
  • end : Position du dernier caractère

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

#create data frame
df <- data.frame(team=c('team_A', 'team_B', 'team_C', 'team_D'),
                 conference=c('West', 'West', 'East', 'East'),
                 points=c(88, 97, 94, 104))

#view data frame
df

    team conference points
1 team_A       West     88
2 team_B       West     97
3 team_C       East     94
4 team_D       East    104

Exemple 1 : Extraire une sous-chaîne dans une chaîne

Le code suivant montre comment extraire la sous-chaîne qui commence en position 5 et se termine en position 6 pour chaque chaîne de la colonne « équipe » :

library(stringr)

#extract characters in positions 5 through 6 of 'team' column
str_sub(string=df$team, start=5, end=6)

[1] "_A" "_B" "_C" "_D"

Exemple 2 : Extraire la sous-chaîne jusqu’à une position spécifique

Le code suivant montre comment extraire chaque caractère jusqu’à la position 4 pour chaque chaîne de la colonne « équipe » :

library(stringr)

#extract all characters up to position 4 in 'team' column
str_sub(string=df$team, end=4)

[1] "team" "team" "team" "team"

Exemple 3 : Extraire la sous-chaîne à partir d’une position spécifique

Le code suivant montre comment extraire chaque caractère après la position 3 pour chaque chaîne de la colonne « équipe » :

library(stringr)

#extract all characters after position 2 in 'team' column
str_sub(string=df$team, start=3)

[1] "am_A" "am_B" "am_C" "am_D"

Exemple 4 : remplacer une sous-chaîne dans une chaîne

Le code suivant montre comment remplacer la sous-chaîne commençant à la position 1 et se terminant à la position 5 pour chaque chaîne de la colonne « équipe » :

library(stringr)

#replace all characters between position 1 and 5 in 'team' column
str_sub(string=df$team, start=1, end=5) <- 'TEAM'

#view updated data frame
df

   team conference points
1 TEAMA       West     88
2 TEAMB       West     97
3 TEAMC       East     94
4 TEAMD       East    104

Ressources additionnelles

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

Comment utiliser str_replace dans R
Comment utiliser str_split dans R
Comment utiliser str_detect dans R

Ajouter un commentaire

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