目录
一、使用factor()函数或as.factor()函数建立因子
二、指定缺失的Levels值
三、labels参数
四、因子的转换
五、数值型因子转换时常见的错误
六、再看levels参数
七、有序因子
八、table()函数
九、认识系统内建的数据集
在类别数据中,有些数据是可以排序或是有顺序关系的,被称为有序因子。
在R语言中有一个特别的数据结构被称为因子。不论是字符串数据或数值数据,皆可转换成因子。
一、使用factor()函数或as.factor()函数建立因子
factor()函数最重要的参数包括以下两个。
- x向量,这是将转换为因子的向量。
- levels:原x向量内元素的可能值。
我们也可以使用as.factor()函数取代factor()函数。
可以使用参数levels强制设定分类数据的顺序。
二、指定缺失的Levels值
有时我们手机的向量数据是不完整的。碰上这类情况也可以使用levels参数设置完整的Levels数据。
三、labels参数
使用factor()函数建立因子时,如果有需要,可以使用第3个参数labels,假设我们想为"East" "West" "South" "North"建立缩写"E" "W" "S" "N",这时就可以使用labels了。
四、因子的转换
在某些时候,我们可能想将因子转换成字符串向量或数值向量。可以使用下列函数。
as.character()函数:可将因子转换成字符串向量。
as.numeric()函数:可将因子转换成数值向量。
五、数值型因子转换时常见的错误
六、再看levels参数
对于任何因子而言,如果看它的Levels,可以使用levels()函数。
nlevels()函数可传回Levels的数量。nlevels()函数传回的是一个数值向量,此数值代表levels的数量,length()函数则传回因子元素的数量。
R语言也允许,使用levels()函数配合索引,只取部分Levels内容。
七、有序因子
有序因子主要是处理有序的数据,可使用以下两种方法建立有序因子。
- ordered()函数。
- factor()函数,增加参数“ordered=TRUE”。
八、table()函数
这个函数可以自动统计在因子的所有元素中,Levels中元素出现的次数。
九、认识系统内建的数据集
state.name是一个向量对象,这个对象依字母顺序排列了美国50个州。
state.region是一个因子,记录每一个州是属于美国的哪一 区的。