参考内容:教程一,
非数值型变量(类别变量和顺序变量)在R语言中称为因子,也称为因子型变量。因子型变量内的所有非重复值,被称为因子水平(levels)。
创建因子
在R语言中可以使用factor()函数和gl()函数来创建因子变量。
(1)使用factor()函数
factor()函数的语法格式为:
f <- factor(x=charactor(), levels, labels=levels, exclude = NA, ordered = is.ordered(x), namax = NA)
其中:
x :数据向量,也就是被转换成因子的向量;最简单的因子构成可以只输入x即可。如以下代码,输出结果中Levels里面去重显示了了A B C D Z,即为因子中的水平。
> f<- c('A','B','C','A','D','A','C','Z')
> fc1<- factor(f)
> fc1
[1] A B C A D A C Z
Levels: A B C D Z
levels:
可选向量,表示因子水平,并且指定了因子中水平的排序。当此参数缺省时,默认为x中包含的所有非重复值。
fc1未定义levels,因此因子中水平排序就按照字母顺序来,但是fc2定义了levels,因子中的顺序就据此调整。
fc3中,levels中因子不包含C,则输出fc3里面C所在的位置就是。
> fc2<- factor(f,levels=c('Z','B','A','D','C'