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'。 –