Ich benutze die recode() - Funktion im Auto-Paket, um eine ganzzahlige Klassenvariable in einem Datenrahmen zu rekodieren. Ich versuche, einen der Werte der Variablen in einen String umzuwandeln, der ein einzelnes Apostroph (') enthält. Dies funktioniert jedoch nicht. Ich stelle mir vor, dass der einzelne Apostroph die Zuweisung vorzeitig beendet. Also habe ich versucht, \ 'zu benutzen, um die Funktion zu verlassen, aber es funktioniert auch nicht.R: Apostroph in recode()
Ich würde gerne recode() weiter verwenden, aber wenn das keine Option ist, sind Alternativen willkommen.
Ein Arbeitsbeispiel:
# Load car() and dplyr()
library(car)
library(dplyr)
# Set up df
a <- seq(1:3)
b <- rep(9,3)
df <- cbind(a,b) %>% as.data.frame(.)
# Below works because none of the recoding includes an apostrophe:
recode(df$a, "1 = 'foo'; 2 = 'bar'; 3 = 'foobar'")
# Below doesn't work due to apostrophe in foofoo's:
recode(df$a, "1 = 'foo'; 2 = 'bar'; 3 = 'foofoo's'")
# Exiting doesn't fix it:
recode(df$a, "1 = 'foo'; 2 = 'bar'; 3 = 'foofoo\'s'")