R gsub() und sub(): Strings und Zeichen ersetzen
Die Funktionen R gsub()
und sub()
können Sie leicht anwenden und mit anderen R-Funktionen kombinieren, um komplexe Textmanipulationen durchzuführen. Sie sind nahtlos in Datenanalysen und statistische Berechnungen integrierbar.
Wozu dienen gsub()
und sub()
in R?
R gsub()
und sub()
sind Funktionen zum Ersetzen von Mustern in Zeichenketten. Die sub()
-Funktion, kurz für „substitute“, ermöglicht, das erste Vorkommen eines bestimmten Musters in einer Zeichenkette zu finden und durch einen anderen Ausdruck auszutauschen. Es handelt sich um eine einmalige Ersetzung. Im Vergleich dazu steht die gsub()
-Funktion für „global substitute“. Diese Methode sucht nach allen Vorkommen eines spezifizierten Musters in einem String und ersetzt sie global durch einen anderen Ausdruck.
Beide Funktionen finden eine breite Anwendung in der Datenbereinigung und -transformation. Ihr Hauptzweck liegt in der Entfernung unerwünschter Muster oder der Anpassung von Textdaten. R gsub()
und sub()
spielen dabei eine entscheidende Rolle bei der Textmanipulation in statistischen Analysen oder Machine-Learning-Anwendungen in R. Hier können Sie gsub()
und sub()
dazu einsetzen, um bestimmte Muster zu extrahieren oder um Daten in einer für die Analyse geeigneten Form zu transformieren.
Das ist die Syntax von R gsub()
und sub()
Die Syntax der Funktionen gsub()
und sub()
in R ist recht ähnlich. Beide Methoden akzeptieren die folgenden Parameter:
- pattern: das zu suchende Muster, entweder in Form eines Strings oder regulären Ausdrucks
- replacement: der Ausdruck, der das gefundene Muster ersetzen soll
- x: Vektor oder Datenrahmen (data frame), in dem die Suche und Ersetzung durchgeführt wird
Der Aufbau von R gsub()
gsub(pattern, replacement, x)
RDie grundlegende Syntax von R sub()
sub(pattern, replacement, x)
RPraktische Beispiele für R gsub()
Die Wahl zwischen sub()
und gsub()
hängt von den Anforderungen der Musterersetzung ab. Die Besonderheit von R gsub()
ist es, alle Vorkommen eines Musters zu bestimmen und auszutauschen.
Leerzeichen entfernen
Sie können mit gsub()
zum Beispiel überflüssige Leerzeichen in Strings bereinigen.
sentence <- " Data Science is powerful. "
clean_sentence <- gsub("\\s+", " ", sentence)
cat(clean_sentence)
RWir erhalten die Ausgabe:
"Data Science is powerful."
RDer reguläre Ausdruck \\s+
passt auf ein oder mehrere aufeinanderfolgende Leerzeichen, was effektiv Whitespace im Satz aufräumt.
Telefonnummern ersetzen
R gsub()
ist praktisch, um sensible Daten wie Telefonnummern zu anonymisieren oder zu entfernen.
text <- "Contact us at 123-456-7890 for more information."
modified_text <- gsub("\\d{3}-\\d{3}-\\d{4}", "redacted phone number", text)
cat(modified_text)
ROutput:
"Contact us at redacted phone number for more information."
RIn diesem Beispiel extrahieren wir mit dem regulären Ausdruck \\d{3}-\\d{3}-\\d{4}
die Telefonnummer und ersetzen alle Zahlen im String text
durch den Platzhalter "redacted phone number"
.
Anwendungsbeispiele für R sub()
Wenn Sie nur das erste Auftreten eines Musters ersetzen wollen, verwenden Sie sub()
.
Ersetzen des ersten Vorkommens von Wörtern
Nehmen wir an, wir haben einen String mit einer Wortwiederholung und wollen das erste Wort austauschen:
text <- "Data Science is powerful. Data Analysis is fun."
result_sub <- sub("Data", "Information", text)
cat(result_sub)
RDie Ausgabe zeigt uns:
"Information Science is powerful. Data Analysis is fun."
RR sub()
durchsucht den Text nach dem Muster "Data"
und ersetzt nur das erste gefundene Vorkommen durch den angegebenen Ersatztext "Information"
.
Ersetzen von Zahlen
Auch mit sub()
können wir Zahlen ersetzen.
numeric_text <- "The cost is $1000. Please pay by 01.02.2024."
result <- sub("\\d+", "2000", numeric_text)
cat(result)
ROutput:
"The cost is $2000. Please pay by 01.02.2024."
RDer reguläre Ausdruck \\d+
passt auf eine oder mehr Ziffern, wobei sub()
nur die ersten zusammenhängenden Zahlen im Text austauscht.
Weitere Erklärungen zu R-Funktionen wie R substring oder R bind können Sie in unserem Digital Guide lesen.
- Flexibel: Hosting, das jedem Website-Traffic standhält
- Verlässlich: Inklusive 24/7-Support und persönlicher Beratung
- Sicher: Kostenloses SSL-Zertifikat, DDoS-Schutz und Backups