2014-11-17 129 views
8

我有一個數據幀200列,每列包含150個基因(行)。統計r中數據幀的出現

我要計數的出現次數每個基因在整個數據幀

mydat <- 

    V1  V2  V3  V4  V5  V6  V7  V8 
1 TGFBR2 TGFBR2 TGFBR2 TGFBR2 TGFBR2 TGFBR2 TGFBR2 TGFBR2 
2 MAML2 MAML2 MAML2  MAML2 MAML2 MAML2  MAML2 MAML2 
3 BMPR2 EIF5A WRAP53 WRAP53 EIF5A EIF5A  EIF5A EIF5A 
4 EIF5A BMPR2 EIF5A  EIF5A ADAMTSL3 BMPR2  WRAP53 BMPR2 
5 EIF5AL1 WRAP53 ADAMTSL3 BMPR2 BMPR2 WRAP53 BMPR2 EIF5AL1 
6 WRAP53 EIF5AL1 BMPR2  ADAMTSL3 WRAP53 EIF5AL1 EIF5AL1 WRAP53 
7 TBC1D5 ADAMTSL3 EIF5AL1 EIF5AL1 EIF5AL1 ADAMTSL3 ADAMTSL3 C1QTNF7 
8 ADAMTSL3 C1QTNF7 C1QTNF7 C1QTNF7 FHL1  YAP1  AURKB ADAMTSL3 
9 C1QTNF7 FHL1  RGS7BP LIFR  C1QTNF7 TMEM43 C1QTNF7 LIFR 
10 AURKB RGS5  AURKB  FAM198B AURKB C1QTNF7 PSMB6 PDGFD 

所以,我所要的輸出是這樣的:

occurences 
TGFBR2: 8 
MALM2 : 8 
FHL1: 3 

等,但我想統計數據幀中的每個基因。

我該怎麼做?

+0

包裹代碼提示由@CathG和@Sven通過'as.data.frame(...)',你將會看到一個漂亮的數據框。 – KFB

回答

14

嘗試

occurences<-table(unlist(mydat)) 

(我分配的結果,所以你沒有得到基因名稱的全屏等各個基因的occurence可以通過occurences["genename"]訪問)

6
table(unlist(mydat)) 

將做的伎倆。

ADAMTSL3 AURKB BMPR2 C1QTNF7 EIF5A EIF5AL1 MAML2 TBC1D5 
     8  4  8  8  8  8  8  1 
    TGFBR2 WRAP53  FHL1  RGS5 RGS7BP FAM198B  LIFR TMEM43 
     8  8  2  1  1  1  2  1 
    YAP1 PSMB6 PDGFD 
     1  1  1 
+0

@ kimmie這有點奇怪。你有兩個使用相同代碼的答案,但你在某個時候接受了一個答案,然後更改爲另一個答案。不幸的是,誰發佈第一個不明確在這裏... ... – akrun

+1

CathG答案已經寫了解釋,因此優越。 –