【R语言】R中的因子(factor)

Python018

【R语言】R中的因子(factor),第1张

R中的因子用于存储不同类别的数据,可以用来对数据进行分组,例如人的性别有男和女两个类别,根据年龄可以将人分为未成年人和成年人,考试成绩可以分为优,良,中,差。

R 语言创建因子使用** factor() **函数向量作为输入参数。

factor() 函数语法格式:

参数说明:

以下实例把字符型向量转换成因子:

我们可以看到输出sex的时候,除了显示字符串的内容以外,这里还有一行levels,证明sex有两个level(类别),female和male。这个顺序也是有讲究的,一般是按字母顺序来排列。我们也可以按照自己的需要来排列因子的顺序。以下实例设置因子水平为levels=c("male","female"):

你会发现现在levels的顺序就按照你设置的来显示了。

我们还能够设置显示的标签

可以看到虽然最初我们构建的向量里面包含的是male和female,最后因子却变成了man和woman。关于这个参数后面我们还会给大家举个更实际的,跟临床数据相关的例子。

R中的因子使用还是更广泛的,例如做差异表达分析的时候我们可以根据因子将数据分成两组。绘制boxplot的时候,我们也可以根据因子来将数据分成两组。更多的实例可以参考下面的视频讲解

R语言基础培训

【R语言】R中的因子(factor)

1、定义五个向量w1、w2、w3、w4和w5,它们分别为数值型和字符型。

2、定义因子col,然后利用factor函数给col赋值,展示col的元素内容。

3、定义因子nol,然后使用factor函数将w1赋值给nol,排序为TRUE。

4、向量w5是字符构成的,利用str()函数展示w5字符内容,显示chr。

5、分别将w1、w2、w3、w4和w5作为数据帧的元素,赋值给num。

6、利用summary函数获取w4元素的基本情况,平均值、最大值、最小值。

你的文件是file.csv

>data<-read.csv("file.csv",header=T)

比如说第2列是性别 1是男 0是女

那么你可以强制转换,也可以用函数

>sex<-factor(data[,2]) 或者 >sex<-as.factor(data[,2])

如此sex就变成了因子型的

你可以把0,1改成female ,male

>levels(sex)<-c("female","male")

最后带回去

>data[,2]<-sex