2014-02-21 6 views
1

나는 계통 발생 트리를 가지고 있는데, 이는 유전자와 함께 어떻게 클러스터링되는지 보여준다. 유클리드 거리 매트릭스와 원숭이 패키지를 사용하여 플로팅했습니다. 자세한 내용은 이전 링크를 참조하십시오.계통 발생 트리에서의 클러스터

Phylogenetic tree

여기 유전자 매트릭스로 전환시켰다 내 데이터 (gg.txt)이다.

ID gene1 gene2 

1 ADRA1D ADK 
2 ADRA1B ADK 
3 ADRA1A ADK 
4 ADRB1 ASIC1 
5 ADRB1 ADK 
6 ADRB2 ASIC1 
7 ADRB2 ADK 
8 AGTR1 ACHE 
9 AGTR1 ADK 
10 ALOX5 ADRB1 
11 ALOX5 ADRB2 
12 ALPPL2 ADRB1 
13 ALPPL2 ADRB2 
14 AMY2A AGTR1 
15 AR ADORA1 
16 AR ADRA1D 
17 AR ADRA1B 
18 AR ADRA1A 
19 AR ADRA2A 
20 AR ADRA2B 

트리를 생성하는 마지막 코드는 다음과 같습니다

library(ape) 
tab=read.table("gg.txt",header=TRUE, stringsAsFactors=FALSE) 
gene.names <- sort(unique(c(tab[,"gene1"],tab[,"gene2"]))) 
gene.matrix <- cbind(matrix(0L,nrow=length(gene.names),ncol=length(gene.names))) 
colnames(gene.matrix) <- c(gene.names) 
rownames(gene.matrix)<- c(gene.names) 
gene.matrix[as.matrix(tab[-1])] <- 1 

##calculating distances 

d <- dist(gene.matrix,method="euclidean") 
fit <- hclust(d, method="ward") 
plot(as.phylo(fit)) 
우리는 formed.ALOX5, AR 및 ALPPL2 형태의 하나 cluster.ADRA1A, ADRA1B, ADRA1D를 얻을 4 개 큰 클러스터가있는 것을 볼 수 있습니다

, AGTR1은 또 다른 클러스터를 형성합니다. 마찬가지로, 2 개의 클러스터가 더 있습니다. 아래와 같이 테이블에이 정보를 넣을 수있는 방법이 있습니까? 이를 수행 할 수있는 소프트웨어가 있습니까?

GENE CLUSTER 

ALOX5 1 
AR  1 
ALPPL2 1 
ADRA1A 2 
ADRA1B 2 
ADRA1D 2 
AGTR1 2 
.. 
.. 
.. 

나는 20 개의 행만 표시했다. 그러나 나는 21k 행을 가지므로 주요 관심사이다.

+1

'? cutree'를 참조하십시오. 트리 (h h) 또는 그룹 수 (인수 k)를 자르는 높이를 지정할 수 있습니다. –

답변

1

@JTT 당 cutree는 훌륭하게 작동합니다! 이것은 내가 찾고있는 것입니다.

cut =cutree(fit,k=5) 

cut 

ACHE ADK ADORA1 ADRA1A ADRA1B ADRA1D ADRA2A ADRA2B ADRB1 ADRB2 AGTR1 ALOX5 ALPPL2 AMY2A  AR ASIC1 
1  1  1  2  2  2  1  1  3  3  2  4  4  1  5  1