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)
R

Die grundlegende Syntax von R sub()

sub(pattern, replacement, x)
R

Praktische 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)
R

Wir erhalten die Ausgabe:

"Data Science is powerful."
R

Der 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)
R

Output:

"Contact us at redacted phone number for more information."
R

In 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)
R

Die Ausgabe zeigt uns:

"Information Science is powerful. Data Analysis is fun."
R

R 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)
R

Output:

"The cost is $2000. Please pay by 01.02.2024."
R

Der reguläre Ausdruck \\d+ passt auf eine oder mehr Ziffern, wobei sub() nur die ersten zusammenhängenden Zahlen im Text austauscht.

Tipp

Weitere Erklärungen zu R-Funktionen wie R substring oder R bind können Sie in unserem Digital Guide lesen.

Webhosting
Top-Hosting für Ihre Website
  • 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
War dieser Artikel hilfreich?
Page top