0
我有两个非常大的基因列表A和B.A有两列:GeneID和p值,而B只有一列GeneID。有B中大约10万个基因,这些都是基因的一个子集(约70基因在这里):从R中的数据集中抽取大量指定行
GeneListA GeneID p.value 41931 0.0210 41931 0.0003 5310612 0.3161 5310612 0.7089 5310612 0.0021 98317 0.1139 98317 0.0009 215688 0.0031 215688 0.0008 GeneListB GeneID 41931 41931 215688 215688 Desired GeneListC 5310612 0.3161 5310612 0.7089 5310612 0.0021 98317 0.1139 98317 0.0009
我不想在B中的基因一露面了。我如何摆脱他们,同时仍然保持我的p值在A?我到目前为止尝试了三种不同的方法:
我摆脱了我的p值列,所以这两个列表中只有Entrez基因ID。然后,我采用了以下代码:
new<-A[setdiff(rownames(A),rownames(B)),]
,但我得到了一组完全不同的基因。这是由A和B基因的一个看似随意的混合物,而不是A-B我也试过:
new<-A[!apply(A,1,FUN=function(y){any(apply(B,1,FUN=function(x){all(x==y)}))}),]
- 最后,我试图通过EntrezGeneID合并,但这是没用的为好。
我被这个摧毁,所以任何帮助将不胜感激。
你是怎么做到的?!?棒极了。它工作完美。我感到震惊。实验室中的任何事情都无法完美运作谢谢你,谢谢你,谢谢你。 – Zishaan
@Zishaan看到'?match'。 –