在R中重新编码任意分组变量或因子

时间:2014-08-20 18:49:24

标签: r recode

假设我有一个任意长度的向量或列,表示一些分组/因子变量,其中包含任意数量的组和相同的任意值:

a <- c(2,2,2,2,2,7,7,7,7,10,10,10,10,10)
a
[1] 2  2  2  2  2  7  7  7  7 10 10 10 10 10

我最容易将其变成这个:

a
[1] 1  1  1  1  1  2  2  2  2  3  3  3  3  3

1 个答案:

答案 0 :(得分:4)

a <- c(2,2,2,2,2,7,7,7,7,10,10,10,10,10)
c(factor(a))
#[1] 1 1 1 1 1 2 2 2 2 3 3 3 3 3

说明:

因子只是具有levels属性和类属性的整数向量。 c删除属性作为副作用。您可以分别使用as.numericas.integer代替c来获得相似或相同的结果。