factor(0)是什么意思?

时间:2019-05-02 02:46:35

标签: r

我正在进行免疫学研究,并希望确定满足某些要求的基因名称。

ifng5p <- df$Gene[which(as.numeric(df$Prop1) <= df[df$Genes == "Ifng", "Prop1.5p"] 
& as.numeric(df$Prop1) >= df[df$Genes== "Ifng", "Prop1.5m"] & as.numeric(df$Prop1) <= df[df$Genes == "Ifng", "Prop1.5p"] 
& as.numeric(df$Prop1) >= df[df$Genes=="Ifng", "Prop1.5m"])]

我希望输出基因名称(位于“ Gene”列中),而我的输出如下:

factor(0)
49041 Levels:  0610005C13Rik 0610006L08Rik 0610009B22Rik 0610009E02Rik 0610009L18Rik ... Zzz3

1 个答案:

答案 0 :(得分:5)

factor(0)表示长度为0的factor类型的向量。之所以会这样,是因为您的子集未返回任何值。您可以使用iris数据集查看此示例:

# There are no cats in `iris` so it returns a vector of length 0
iris$Species[iris$Species ==  'cat']

factor(0)
Levels: setosa versicolor virginica

这是因为所有值的iris$Species == 'cat'FALSE,因此没有返回任何值。 table函数很好地计算了向量中的每个值,我们可以使用它来查看iris$Species == 'cat'给我们150个FALSE值和0 TRUE

table(iris$Species == 'cat')

FALSE 
  150