【发布时间】:2016-01-12 10:16:31
【问题描述】:
我寻找了类似的问题,但找不到根据不同列中的数值选择行的答案。我有一个看起来像这样的数据集(总共包括 24 个研究/列和超过 28.000 行)
header <- c("symbol", "gene1", "gene2", "gene3")
study1 <- c("0.06", "0.01", "NA", "NA")
study2 <- c("0.09", "NA", "0.02", "0.08", "0.07")
study3 <- c("0.09", "NA", "NA", "0.1")
DF<- data.frame(header, study1, study2, study3, stringsAsFactors=FALSE)
DF
ID study1 study2 study3
1 gene1 0.06 0.09 0.09
2 gene2 0.01 NA NA
3 gene3 NA 0.02 NA
4 gene4 NA 0.07 0.1
>
我想创建一个新的 data.frame,其中包含所有列,但仅包含至少一项研究(即一列)的值 0.05
因为我是 R 编程的初学者,所以我从只为一列编写代码过滤开始,并且通过应用“which”可以正常工作
new_DF<-DF[which(as.numeric(DF$study1)<=0.05),]
在此之前,我对自己感到非常高兴 :-),但是,我该如何调整它以适应多个列?我尝试包含通配符“*”
new_DF<-DF[which(as.numeric(DF$study*)<=0.05),]
但我在“new_DF
谁能帮助我? 非常感谢!
【问题讨论】:
标签: r