R语言中的因子类型有哪些?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
一、因素函数
#函数因子可以把一个向量编码为一个因子,其一般形式为: #因子(x,水平=排序(独特的(x), na.last=TRUE),标签,exculde=NA,订单=FALSE) #其中x是向量,水平是水平,可以自行指定各离散的取值,不指定时由x的不同值来表示,标签可以用来指定各水平的标签 #不指定时用各离散取值的对应字符串 , sex<- c (“M",“F",“M",“M",“F") 因子(性) #使用is.factor来判断对象是否为因子类型 is.factor(性) #使用as.factor来将对象转换为因子类型 sex.factor<-as.factor(性) #使用水平来取得因子中的水平 水平(sex.factor) #,[1],“F",“M"
二,tapply函数
#函数tapply () #当我们知道5个人的性别以及5个人的身高的时候,就能计算出每个性别下的平均身高 height<- c (170175180165168) , tapply(高度、sex.factor意味着) #,F ,,,,,,, M #,171.5000,171.6667, , # tapply 的使用格式为tapply (x,指数,乐趣),其中x为对象,指数为与x具有相同个数的因子类型,乐趣为指定的方法
三、gl()函数
# gl()函数 # gl函数能很快的产生因子,其基本用法为:gl (n, k, k=n *长度,标签=1:n,订单=false) , gl (3、5) #,[1],1,1,1,1,1,2,2,2,2,2,3,3,3,3,3 #,级别:,1,2,3 , gl (3、1, 15) #,[1],1,2,3,1,2,3,1,2,3,1,2,3,1,2,3 #,级别:,1,2,3
<强>补充:R语言中因子(因素)转换成数值型(数字)的问题强>
一直觉得只要是数字,不管是什么类型的,都可以通过as.numeric()函数转换为对应的数字类型的数字,例如
x<?23”, x为字符类型,而as.numeric (x)则为数字类型的123。但是因子(因素)类型却不一样。
a<因子(c(100200300301302400年,10)),它们的值分别为100 200 300 301 302 400 10,然而as.numeric (a)对应的值并非100 200 300 301 302 400 10,而是2 3 4 5 6 7 1。因子(因素)转换成数值型(数字)的规则是这样的:
一共有n个数,那么转换后的数字就会在1——n中取值,数字最小的取,一次小的取二,以此类推。
那么如何让因子(因素)类型里的数值转换对应的数值型呢?
as.numeric (as.character (factorname)) as.numeric(水平(factorname) [factorname])
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。