R个字符向量成因

时间:2018-11-09 22:56:33

标签: r

我有一个a<- c('ES1-5', 'ES14-26', 'ES27-38', 'ES6-13', 'SA1-13', 'SA14-25')类型的字符向量,它是数据帧的一列。

我想做的就是转换为一个级别为1,2,3,4,5,6的因子,然后转换为一个1,2,3,4,5,6的数值向量并合并为数据框。

有人可以给我一种优雅的方法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用as.numeric(as.factor))

##Some random data##
a<- c('ES1-5', 'ES14-26', 'ES27-38', 'ES6-13', 'SA1-13', 'SA14-25')
x <- tibble(x = rnorm(6),
                y = rnorm(6),
                a = a) ##Append vector a as column in a dataframe

##Make a into a factor and append to the dataframe
x$a_factor <- as.numeric(factor(x$a))
x