gpt4 book ai didi

r - 构建循环系统发育树

转载 作者:行者123 更新时间:2023-12-02 21:35:17 25 4
gpt4 key购买 nike

我有一张与它们相关的基因和疾病表。我想构建一个系统发育树,并将基因按其疾病分组。下面是一个示例数据集,其中gene1列属于disease1,gene2属于disease2。主要是基因1和基因2彼此相关,并映射到它们所属的疾病。

gene1   gene2   disease1           disease2
AGTR1 ACHE cancer tumor
AGTR1 ACHE parkinson's asthma
ALOX5 ADRB1 myocardial infarct heart failure
AR ADORA1 breast cancer anxiety disorder

我想要一个用于我的目的的循环系统发育树,在下面的链接中给出: http://itol.embl.de/itol.cgi

有什么建议可以在 R 或任何软件中执行此操作吗?

谢谢 enter image description here

我现在正在运行的代码:

d=read.csv("genes_disease.txt",sep="\t",header=TRUE)
phyl_gad <-as.phylo(hclust(dist(d)))
plot(phyl_gad,type="fan",edge.col=c("red","green","blue","orange","yellow","pink","magenta","white"),show.tip.label=FALSE)

如果我确实 show.tip.label=TRUE,则会绘制太多标签并使提示变得困惑。

我修改后的数据集现在只有两列,一列用于基因,一列用于疾病。

最佳答案

啊,我以前做过这个。正如 Bryan 所说,您想使用 ape 包。假设您有一个 hclust 对象。例如,

library(ape)
fit<-hclust(d,method='ward')
plot(as.phylo(fit),type='fan',label.offset=0.1,no.margin=TRUE)

如果要修改树末端的颜色,可以使用 cuttreetip.color 参数。这将为不同的簇创建一组重复的颜色(例如,color=c('red','blue') 将为分支末端交替显示蓝色和红色文本。

nclus=...#insert number of clusters you want to cut to
color=...#insert a vector of colors here
fit<-hclust(d,method='ward')
color_list=rep(color,nclus/length(color))
clus=cutree(fit,nclus)
plot(as.phylo(fit),type='fan',tip.color=color_list[clus],label.offset=0.1,no.margin=TRUE)

我不确定您要使用哪种类型的聚类方法(我使用的是 Ward 方法),但这就是您的做法。

关于r - 构建循环系统发育树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21565143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com