Packages, Plots & eine Prise Python. Special guest: Mathematica

Kategorie: Tipps

Hier findest du kleine Tipps und Tricks, die Probleme mit R lösen

Zeichen in Strings entfernen

Sonderzeichen in Strings ändern oder entfernen

Häufig enthalten Strings in Data Frames unerwünschte Zeichen wie etwa das Euro-Zeichen €. Um dieses zu entfernen, bieten sich die R-Funktionen sub() und gsub() an. In der Klammer steht erst das oder die zu ersetzenden Zeichen, dann das neue Zeichen und schließlich der Vektor, der duchsucht werden soll. Letzteres kann auch eine Spalte in einem Data Frame sein.

value <- sub("\u20AC", "", x) # € entfernen

Dabei ersetzt sub() nur das als erstes vorkommende Zeichen, während gsub() alle ersetzt.

Factor in numeric umwandeln

So lässt sich ein factor in den Typ numeric ändern

R bietet keinen Befehl, um etwa in einem Data Frame eine Spalte mit Faktoren – Typ factor – in nummerische Werte (Typ numeric) umzuwandeln. Stattdessen ist der Umweg über character nötig. Um eine einzelne Spalte zu konvertieren, genügt der Befehl
df$x <- as.numeric(as.character(df$x))
Wenn mehrere Spalten betroffen sind, verwendet man

indx <- sapply(df, is.factor)
df[indx] <- lapply(df[indx], 
    function(x) as.numeric(as.character(x)))