大家好,我正在尝试将包含所有因子值的向量(如下图所示)转换为整数向量:
我已经尝试过data$rate=as.numeric(data$rate)了,这给了我所有评级的频率为 num,并data$rate=as.numeric(as.character(data$rate))给了我所有的 NA 值。
我想转换为普通的 int 或 num 谢谢。
大家好,我正在尝试将包含所有因子值的向量(如下图所示)转换为整数向量:
我已经尝试过data$rate=as.numeric(data$rate)了,这给了我所有评级的频率为 num,并data$rate=as.numeric(as.character(data$rate))给了我所有的 NA 值。
我想转换为普通的 int 或 num 谢谢。
你在寻找类似这个功能的东西吗?
factor2num <- function(x, parse = FALSE){
s <- as.character(x)
if(parse) eval(parse(text = s)) else as.numeric(s)
}
factor2num(factor("3"))
#[1] 3
factor2num(factor("3.9/5"), TRUE)
# [1] 0.78
data$rate <- as.numeric(sub("\\/5", "", data$rate))
这有效地将“/5”替换为“”。