我有一棵系统发育树,其中显示了基因以及它们如何聚集在一起。使用欧几里得距离矩阵和ape封装对其进行绘制。有关更多详细信息,请参见前面的链接。
这是我的数据(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))
我们可以看到有四个大集群形成。ALOX5,AR和ALPPL2组成一个集群。ADRA1A,ADRA1B,ADRA1D,AGTR1组成另一个集群。类似地,还有两个集群。有什么办法可以将此信息放在表格中,例如下面的示例?有没有可用的软件来做到这一点?
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
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句