我正在尝试将数据框的所有列转换为因子。但是,转换为因素会使我的所有条目变为string
而不是numeric
。见例:
df <- data.frame(a = c(1,2,3), b = c(4,5,6))
df_factor <- apply(df, 2, factor)
这就是我得到的:
#> df_factor
# a b
#[1,] "1" "4"
#[2,] "2" "5"
#[3,] "3" "6"
您是否知道问题的来源?
谢谢,
答案 0 :(得分:1)
apply(df, 2, factor)
将您的数据框架更改为矩阵。请改用:
df_factor <- as.data.frame(lapply(df, factor))
答案 1 :(得分:0)
plyr
替代方案:
library(plyr)
df2 <- colwise(factor)(df)