Introduction
Les fonctions sub()
et gsub()
en R vont substituer la chaîne de caractères ou les caractères dans un vecteur ou un data frame par une chaîne spécifique. Ces fonctions sont utiles lors de modifications sur de grands ensembles de données.
Dans cet article, vous allez explorer comment utiliser les fonctions sub()
et gsub()
en R.
Prérequis
Pour terminer ce tutoriel, vous aurez besoin de :
- R installed locally or on a server.
Syntaxe de sub()
et gsub()
La syntaxe de base pour sub()
est :
sub(pattern, replacement, x)
La syntaxe de base pour gsub()
est :
gsub(pattern, replacement, x)
La syntaxe pour sub()
et gsub()
requiert un motif, un remplacement et le vecteur ou le data frame :
- motif : Le motif ou la chaîne que vous souhaitez substituer.
- remplacement : Une chaîne d’entrée pour substituer la chaîne de motif.
- x: A vector or a data frame to substitute the strings.
Le motif peut également être sous forme d’expression régulière (regex).
Maintenant que vous êtes familiarisé avec la syntaxe, vous pouvez passer à l’implémentation.
La fonction sub()
en R
La fonction sub()
en R remplace la chaîne dans un vecteur ou un data frame par la chaîne d’entrée ou la chaîne spécifiée.
Cependant, la limitation de la fonction sub()
est qu’elle ne substitue que la première occurrence.
1. Utilisation de la fonction sub()
Dans cet exemple, apprenez comment substituer un motif de chaîne par une chaîne de remplacement avec la fonction sub()
.
# le vecteur d'entrée
df<-"R is an open-source programming language widely used for data analysis and statistical computing."
# le remplacement
sub('R','The R language',df)
L’exécution de cette commande génère la sortie suivante :
Output"The R language is an open-source programming language widely used for data analysis and statistical computing."
La fonction sub()
remplace la chaîne 'R'
dans le vecteur par la chaîne 'Le langage R'
.
Dans cet exemple, il y avait une seule occurrence de correspondance de motif. Considérez ce qui se passe s’il y a plusieurs occurrences de correspondances de motifs.
# le vecteur d'entrée
df<-"In this tutorial, we will install R and show how to add packages from the official Comprehensive R Archive Network (CRAN)."
# le remplacement
sub('R','The R language',df)
L’exécution de cette commande génère la sortie suivante :
"In this tutorial, we will install The R language and show how to add packages from the official Comprehensive R Archive Network (CRAN)."
Dans cet exemple, vous pouvez observer que la fonction sub()
a remplacé la première occurrence de la chaîne 'R'
par 'Le langage R'
. Mais l’occurrence suivante dans la chaîne reste la même.
2. Utilisation de la fonction sub()
avec un cadre de données
La fonction sub()
fonctionne également avec les cadres de données.
# création d'un cadre de données
df<-data.frame(Creature=c('Starfish','Blue Crab','Bluefin Tuna','Blue Shark','Blue Whale'),Population=c(5,6,4,2,2))
# cadre de données
df
Cela créera le cadre de données suivant :
Creature Population
1 Starfish 5
2 Blue Crab 6
3 Bluefin Tuna 4
4 Blue Shark 2
5 Blue Whale 2
Ensuite, remplacez les caractères 'Bleu'
par les caractères 'Vert'
:
# substitution des valeurs
sub('Blue','Green',df)
L’exécution de cette commande génère la sortie suivante :
Output"c(\"Starfish\", \"Green Crab\", \"Bluefin Tuna\", \"Blue Shark\", \"Blue Whale\")"
"c(5, 6, 4, 2, 2)"
Vous pouvez également spécifier une colonne particulière pour remplacer toutes les occurrences de 'Bleu'
par 'Vert'
:
# substitution des valeurs
sub('Blue','Green',df$Creature)
L’exécution de cette commande génère la sortie suivante :
Output"Starfish"
"Green Crab"
"Greenfin Tuna"
"Green Shark"
"Green Whale"
Toutes les occurrences des caractères 'Bleu'
ont été remplacées par 'Vert'
.
La fonction gsub()
en R
La fonction gsub()
en R est utilisée pour les opérations de remplacement. La fonction prend l’entrée et la substitue aux valeurs spécifiées.
Contrairement à la fonction sub()
, gsub()
applique une substitution globale à toutes les correspondances.
1. Utilisation de la fonction gsub()
Dans cet exemple, apprenez à substituer un motif de chaîne par une chaîne de remplacement avec la fonction gsub()
.
# le vecteur d'entrée
df<-"In this tutorial, we will install R and show how to add packages from the official Comprehensive R Archive Network (CRAN)."
Ce sont des données où 'R'
est écrit plusieurs fois.
# substitution des valeurs en utilisant gsub()
gsub('R','The R language',df)
Output"In this tutorial, we will install The R language and show how to add packages from the official Comprehensive The R language Archive Network (CThe R languageAN)."
Toutes les occurrences de ‘R
’ ont été remplacées (y compris les occurrences dans "Comprehensive R Archive Network"
et "CRAN"
). La fonction gsub()
trouve chaque mot correspondant au paramètre et le remplace par le mot ou les valeurs d’entrée.
2. Utilisation de la fonction gsub()
avec les Data Frames
La fonction gsub()
fonctionne également avec les data frames.
# création d'un data frame
df<-data.frame(Creature=c('Starfish','Blue Crab','Bluefin Tuna','Blue Shark','Blue Whale'),Population=c(5,6,4,2,2))
Préfixons les valeurs de la colonne Creature
avec 'Deep Sea '
:
# substitution des valeurs
gsub('.*^','Deep Sea ',df$Creature)
L’exécution de cette commande génère la sortie suivante :
Output"Deep Sea Starfish"
"Deep Sea Blue Crab"
"Deep Sea Bluefin Tuna"
"Deep Sea Blue Shark"
"Deep Sea Blue Whale"
Dans cet exemple, la fonction gsub()
utilise l’expression régulière (regex) : .*^
. Il s’agit d’un motif pour la position au début de la chaîne.
Conclusion
Dans cet article, vous avez exploré comment utiliser les fonctions sub()
et gsub()
en R. Ces fonctions substituent la chaîne ou les caractères dans un vecteur ou un data frame par une chaîne spécifique. La fonction sub()
s’applique pour la première correspondance. La fonction gsub()
s’applique pour toutes les correspondances.
Poursuivez votre apprentissage avec Comment utiliser replace()
en R.
Source:
https://www.digitalocean.com/community/tutorials/sub-and-gsub-function-r