[英]Clusters from a 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))
我們可以看到形成了4個大集群。ALOX5,AR和ALPPL2組成一個集群。ADRA1A,ADRA1B,ADRA1D,AGTR1組成另一個集群。類似地,還有2個集群。 有什么辦法可以將此信息放在表格中,例如以下示例? 有沒有可用的軟件來做到這一點?
GENE CLUSTER
ALOX5 1
AR 1
ALPPL2 1
ADRA1A 2
ADRA1B 2
ADRA1D 2
AGTR1 2
..
..
..
我只顯示了20行,但我卻顯示了21k行,所以這才是主要問題。
按照@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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.