Strings in r vergelijken (3 voorbeelden)


U kunt de volgende methoden gebruiken om tekenreeksen in R te vergelijken:

Methode 1: Vergelijk twee strings

 #case-sensitive comparison
string1 == string2

#case-insensitive comparison
tolower (string1) == tolower (string2)

Methode 2: Vergelijk twee stringvectoren

 #case-sensitive comparison
identical(vector1, vector2)

#case-insensitive comparison
identical( tolower (vector1), tolower (vector2))

Methode 3: Vind overeenkomsten tussen twee stringvectoren

 #find which strings in vector1 are also in vector2
vector1[vector1 %in% vector2]  

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.

Voorbeeld 1: Controleer of twee vectoren hetzelfde zijn

De volgende code laat zien hoe u twee tekenreeksen in R kunt vergelijken om te bepalen of ze gelijk zijn:

 #define two strings
string1 <- "Mavericks"
string2 <- "mavericks"

#case-sensitive comparison
string1 == string2

[1] FALSE

#case-insensitive comparison
tolower (string1) == tolower (string2)

[1] TRUE

De hoofdlettergevoelige vergelijking retourneert FALSE, omdat de twee tekenreeksen niet precies identiek zijn.

De hoofdletterongevoelige vergelijking retourneert echter TRUE , omdat beide tekenreeksen dezelfde tekens in dezelfde volgorde bevatten, ongeacht het hoofdlettergebruik.

Voorbeeld 2: Vergelijk twee stringvectoren

De volgende code laat zien hoe u de functie identiek() kunt gebruiken om te bepalen of twee tekenreeksvectoren gelijk zijn:

 #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

De hoofdlettergevoelige vergelijking retourneert een FALSE- waarde, omdat de twee vectoren niet exact dezelfde tekenreeksen in hetzelfde hoofdlettergebruik bevatten.

De hoofdletterongevoelige vergelijking retourneert echter TRUE , aangezien beide vectoren dezelfde tekenreeksen bevatten, ongeacht het hoofdlettergebruik.

Voorbeeld 3: Overeenkomsten vinden tussen twee stringvectoren

De volgende code laat zien hoe u de operator %in% kunt gebruiken om te bepalen welke tekenreeksen in de ene vector tot een andere vector behoren:

 #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”

Uit het resultaat kunnen we zien dat de strings “hey” en “hallo” voorkomen in zowel vector1 als vector2.

Gerelateerd: Hoe de %in% operator in R te gebruiken

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R kunt uitvoeren:

Hoe twee kolommen in R te vergelijken
Hoe twee vectoren in R te vergelijken
Hoe de tekenlocatie in een string in R te vinden
Hoe vector naar string te converteren in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert