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

Ajouter un commentaire

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