Подтвердить что ты не робот

R меняет все столбцы типового коэффициента на числовые

У меня есть кадр данных, который равен 100 X 100. Есть 30 столбцов, которые являются факторами. Есть ли способ переключить только столбцы факторного типа на числовой тип, не влияя на другие столбцы (без перехода по маршруту цикла)?

4b9b3361

Ответ 1

Применение мудрости от Carl Witthoft выше:

asNumeric <- function(x) as.numeric(as.character(x))
factorsNumeric <- function(d) modifyList(d, lapply(d[, sapply(d, is.factor)],   
                                                   asNumeric))

Пример:

d <- data.frame(x=factor(1:3), y=factor(2:4), z=factor(3:5),
                r=c("a", "b", "c"), stringsAsFactors=FALSE)
> f <- factorsNumeric(d)
> class(f$x)
[1] "numeric"
> class(f$r)
[1] "character"