Verwendung von str_split in r (mit beispielen)
Die Funktion str_split() des stringr- Pakets in R kann verwendet werden, um einen String in mehrere Teile aufzuteilen. Diese Funktion verwendet die folgende Syntax:
str_split(String, Muster)
Gold:
- string: Zeichenvektor
- Muster: Muster, nach dem geteilt werden soll
Ebenso kann die Funktion str_split_fixed() aus dem Paket stringr verwendet werden, um einen String in eine feste Anzahl von Blöcken aufzuteilen. Diese Funktion verwendet die folgende Syntax:
str_split_fixed(string, pattern, n)
Gold:
- string: Zeichenvektor
- Muster: Muster, nach dem geteilt werden soll
- n: Anzahl der zurückzugebenden Teile
Dieses Tutorial enthält Beispiele für die Verwendung jeder dieser Funktionen im folgenden Datenrahmen:
#create data frame df <- data. frame (team=c('andy & bob', 'carl & doug', 'eric & frank'), dots=c(14, 17, 19)) #view data frame df team points 1 andy & bob 14 2 carl & doug 17 3 eric & frank 19
Beispiel 1: Teilen Sie einen String mit str_split()
Der folgende Code zeigt, wie die Zeichenfolge in der Spalte „Team“ mithilfe der Funktion str_split() aufgeteilt wird:
library (stringr) #split the string in the team column on " & " str_split(df$team, " & ") [[1]] [1] “andy” “bob” [[2]] [1] “carl” “doug” [[3]] [1] “eric” “frank”
Das Ergebnis ist eine Liste mit drei Elementen, die die Namen der einzelnen Spieler jedes Teams anzeigen.
Beispiel 2: Teilen Sie einen String mit str_split_fixed()
Der folgende Code zeigt, wie man die Zeichenfolge in der Spalte „Team“ mithilfe der Funktion str_split_fixed() in zwei feste Teile aufteilt:
library (stringr)
#split the string in the team column on " & "
str_split_fixed(df$team, " & ", 2)
[,1] [,2]
[1,] “andy” “bob”
[2,] "carl" "doug"
[3,] "eric" "frank"
Das Ergebnis ist eine Matrix mit zwei Spalten und drei Zeilen.
Eine nützliche Anwendung der Funktion str_split_fixed() besteht darin, die resultierende Matrix an das Ende des Datenrahmens anzuhängen. Zum Beispiel:
library (stringr)
#split the string in the team column and append resulting matrix to data frame
df[, 3:4] <- str_split_fixed(df$team, " & ", 2)
#view data frame
df
team points V3 V4
1 andy & bob 14 andy bob
2 carl & doug 17 carl doug
3 eric & frank 19 eric frank
Die Spalte mit der Bezeichnung „V3“ zeigt den Namen des Spielers der ersten Mannschaft und die Spalte mit der Bezeichnung „V4“ zeigt den Namen des Spielers der zweiten Mannschaft.
Zusätzliche Ressourcen
So verwenden Sie str_replace in R
So führen Sie einen teilweisen String-Abgleich in R durch
So konvertieren Sie Zeichenfolgen in Datumsangaben in R
So konvertieren Sie Zeichen in R in Zahlen