habe ich einen Datenrahmen, die ich als solches Konstrukt:Konvertieren von Datenrahmen Spalte von Zeichen zu numerischen
> yyz <- data.frame(a = c("1","2","n/a"), b = c(1,2,"n/a"))
> apply(yyz, 2, class)
a b
"character" "character"
I die letzte Spalte in numerischen während zu konvertieren bin versucht, noch die erste Spalte als Charakter beibehalten wird. Ich habe das versucht:
> yyz$b <- as.numeric(as.character(yyz$b))
> yyz
a b
1 1
2 2
n/a NA
Aber wenn ich die Anwendung Klasse ausführen zeigt es mir, dass sie beide Zeichen Klassen sind.
> apply(yyz, 2, class)
a b
"character" "character"
Richte ich den Datenrahmen falsch ein? Oder ist es die Art, wie R den Datenrahmen interpretiert?
Beachten Sie, dass 'Klasse (yyz $ b)' Erträge ' "numerisch"' in diesem Beispiel. Daher ist die Spalte * tatsächlich numerisch. Wie von @akrun gezeigt, resultiert die offensichtliche Nichtübereinstimmung von Klassen aus der Verwendung von 'apply()'. – RHertel