2014-11-17 3 views
8

각 열에 150 개의 유전자 (행)가 포함 된 데이터 프레임이 200 개 있습니다.r에있는 data.frame의 출현 횟수

나는

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

코드가 제안 포장

occurences<-table(unlist(mydat)) 

가 (당신이 유전자 이름의 전체 화면을하지 않고 각각의 유전자의 선두로부터이 occurences["genename"]에 액세스 할 수 있도록 내가 결과를 할당) 시도 @CathG와 @Sven에 의해'as.data.frame (...) '에 의해 멋진 데이터 프레임을 얻을 수 있습니다. – KFB

답변

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 대답은 설명을 작성했으며 따라서 우수합니다. –