Comment comparer des chaînes dans R (3 exemples)
Vous pouvez utiliser les méthodes suivantes pour comparer des chaînes dans R :
Méthode 1 : comparer deux chaînes
#case-sensitive comparison string1 == string2 #case-insensitive comparison tolower(string1) == tolower(string2)
Méthode 2 : comparer deux vecteurs de chaînes
#case-sensitive comparison identical(vector1, vector2) #case-insensitive comparison identical(tolower(vector1), tolower(vector2))
Méthode 3 : trouver des similitudes entre deux vecteurs de chaînes
#find which strings in vector1 are also in vector2
vector1[vector1 %in% vector2]
Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.
Exemple 1 : Vérifier si deux vecteurs sont identiques
Le code suivant montre comment comparer deux chaînes dans R pour déterminer si elles sont égales :
#define two strings string1 <- "Mavericks" string2 <- "mavericks" #case-sensitive comparison string1 == string2 [1] FALSE #case-insensitive comparison tolower(string1) == tolower(string2) [1] TRUE
La comparaison sensible à la casse renvoie la valeur FALSE puisque les deux chaînes ne sont pas parfaitement identiques.
Cependant, la comparaison insensible à la casse renvoie la valeur TRUE puisque les deux chaînes contiennent les mêmes caractères dans le même ordre, quelle que soit la casse.
Exemple 2 : comparer deux vecteurs de chaînes
Le code suivant montre comment utiliser la fonction identique() pour déterminer si deux vecteurs de chaînes sont égaux :
#define two vectors of strings
vector1 <- c("hey", "hello", "HI")
vector2 <- c("hey", "hello", "hi")
#case-sensitive comparison
identical(vector1, vector2)
[1] FALSE
#case-insensitive comparison
identical(tolower(vector1), tolower(vector2))
[1] TRUE
La comparaison sensible à la casse renvoie une valeur FALSE puisque les deux vecteurs ne contiennent pas exactement les mêmes chaînes dans la même casse.
Cependant, la comparaison insensible à la casse renvoie la valeur TRUE puisque les deux vecteurs contiennent les mêmes chaînes, quelle que soit la casse.
Exemple 3 : Trouver des similitudes entre deux vecteurs de chaînes
Le code suivant montre comment utiliser l’opérateur %in% pour rechercher quelles chaînes d’un vecteur appartiennent à un autre vecteur :
#define two vectors of strings
vector1 <- c("hey", "hello", "greetings")
vector2 <- c("hey", "hello", "hi")
#find which strings in vector1 are also in vector2
vector1[vector1 %in% vector2]
[1] "hey" "hello"
À partir du résultat, nous pouvons voir que les chaînes « hey » et « hello » existent à la fois dans vector1 et vector2.
Connexe : Comment utiliser l’opérateur %in% dans R
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans R :
Comment comparer deux colonnes dans R
Comment comparer deux vecteurs dans R
Comment trouver l’emplacement du caractère dans une chaîne dans R
Comment convertir un vecteur en chaîne dans R