ich in meinem Dataset versuchen einige Faktorvariablen, und ich habe sie numerisch zu konvertieren mit SchleifeSchleife zu konvertieren Faktoren in numerische
a = sample(c('a', 'b'), 100, replace = TRUE)
b = sample(c('a', 'b'), 100, replace = TRUE)
df = as.data.frame(cbind(a, b))
library(plyr); library(dplyr)
for(i in df[, 1:2]) {
k = as.numeric(as.character(revalue(df[,i],
c('a' = 1,
'b'= 2
))))
}
und ich bekomme Fehler
Error in revalue(df[, i], c(a = "1", b = "2")) :
x is not a factor or a character vector.
Was ist los? NB Es ist wichtig, dass 'a' bis 1 & 'b' = 2
Sie 'tun wollen (df [, 1: 2])) 'anstelle von' für (i in df [, 1: 2]) ' –
Für Ihre Beispieldaten einfach' df $ a <- as.numeric (df $ a) 'und 'df $ b <- as.numeric (df $ b)' funktioniert. – neilfws