如何根据原始值排序因子水平?

时间:2014-09-03 11:46:41

标签: r numerical categorical-data

如果我从数值向量创建一个因子,那么因子类别是否会被现在被视为类别的值自动排序?

即。 [1,4,7,3,2] - > categories = {1,2,3,4,7}

1 个答案:

答案 0 :(得分:0)

简答:是的。

答案很长:这取决于。如果使用函数factor()转换向量而不调用任何额外的参数,R将对唯一值进行排序并按顺序分配类别:

> x <- c(3,1,4,5,1,4)
> factor(x)
[1] 3 1 4 5 1 4
Levels: 1 3 4 5

但是当你使用参数levels

时,它不会胜利
> factor(x, levels=unique(x))
[1] 3 1 4 5 1 4
Levels: 3 1 4 5

在这种情况下,它将级别的顺序作为分配类别的顺序。