如何理解R语言中的有序因子和无序因子

本篇文章为大家展示了如何理解R语言中的有序因子和无序因子,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

因子是一种向量对象,它给自己的组件指定了一个离散的分类(分组),它的组件由其他等长的向量组成。R提供了有序因子和无序因子。
通俗点说,因子就是将对象的值分成不同的组levels)。
用函数factor()创建一个因子,levels按序排列(字母序或数值序)。

例如province<-c("四川","湖南","江苏","四川","四川","四川","湖南","江苏","湖南","江苏"),为province创建因子:
> pf<-factor(province)   创建province的因子pf
> pf     打印出来
 [1] 四川 湖南 江苏 四川 四川 四川 湖南 江苏 湖南 江苏
Levels: 湖南 江苏 四川
函数levels()可以用来观察因子中有多少不同的levels。

假如我们拥有这些省份考生的分数:
> score<-c(95,86,84,92,84,79,86,99,85,90)
函数tappley()可以用来计算各省的平均分数,函数tapply()的作用是对它第一个参数的组件中所包含的每个组应用一个参数三指定的函数。
> smeans<-tapply(score,pf,mean)
> smeans
    湖南     江苏     四川 
85.66667 91.00000 87.50000 
再例如,下面命令会给出各组的length
> tapply(score,pf,length)
湖南 江苏 四川 
   3    3    4 

函数ordered()可以创建有序因子
> ordered(province)
 [1] 四川 湖南 江苏 四川 四川 四川 湖南 江苏 湖南 江苏
Levels: 湖南 < 江苏 < 四川

上述内容就是如何理解R语言中的有序因子和无序因子,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。