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 extraire une chaîne entre des caractères spécifiques dans R



Vous pouvez utiliser les méthodes suivantes pour extraire une chaîne entre des caractères spécifiques dans R :

Méthode 1 : Extraire la chaîne entre des caractères spécifiques à l’aide de Base R

 gsub(".*char1 (.+) char2.*", "\\1", my_string)

Méthode 2 : extraire la chaîne entre des caractères spécifiques à l’aide de stringr

library(stringr)

str_match(my_string, "char1\\s*(.*?)\\s*char2")[,2]

Ces deux exemples extraient la chaîne entre les caractères char1 et char2 dans my_string .

Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le bloc de données suivant :

#create data frame
df <- data.frame(team=c('team Mavs pro', 'team Heat pro', 'team Nets pro'),
                 points=c(114, 135, 119))

#view data frame
df

           team points
1 team Mavs pro    114
2 team Heat pro    135
3 team Nets pro    119

Exemple 1 : Extraire une chaîne entre des caractères spécifiques à l’aide de Base R

Le code suivant montre comment extraire la chaîne entre les caractères team et pro pour chaque ligne de la colonne team du bloc de données :

#create new column that extracts string between team and pro
df$team_name <- gsub(".*team (.+) pro.*", "\\1", df$team)

#view updated data frame
df

           team points team_name
1 team Mavs pro    114      Mavs
2 team Heat pro    135      Heat
3 team Nets pro    119      Nets

Notez que la nouvelle colonne appelée team_name contient la chaîne entre les caractères team et pro pour chaque ligne de la colonne team du bloc de données.

Connexe : Une introduction à gsub() dans R

Exemple 2 : Extraire une chaîne entre des caractères spécifiques à l’aide du package stringr

Le code suivant montre comment extraire la chaîne entre les caractères team et pro pour chaque ligne de la colonne team du bloc de données en utilisant la fonction str_match() du package stringr dans R :

library(stringr)

#create new column that extracts string between team and pro
df$team_name <- str_match(df$team, "team\\s*(.*?)\\s*pro")[,2]

#view updated data frame
df

           team points team_name
1 team Mavs pro    114      Mavs
2 team Heat pro    135      Heat
3 team Nets pro    119      Nets

Notez que la nouvelle colonne appelée team_name contient la chaîne entre les caractères team et pro pour chaque ligne de la colonne team du bloc de données.

Cela correspond aux résultats de l’utilisation de la fonction gsub() en base R.

Notez que la fonction str_match() renvoie une matrice dans laquelle la première colonne contient les chaînes d’origine et la deuxième colonne contient la sous-chaîne qui nous intéresse.

Ainsi, il faut utiliser [,2] pour extraire uniquement la deuxième colonne de la matrice renvoyée par la fonction str_match() .

Ressources additionnelles

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

Comment sélectionner des colonnes contenant une chaîne spécifique dans R
Comment supprimer des caractères d’une chaîne dans R
Comment trouver l’emplacement du caractère dans une chaîne dans R

Ajouter un commentaire

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