2

遺伝子とそれらが関連する疾患の表があります。系統樹を構築し、遺伝子を疾患にグループ化したいと考えています。以下はサンプル データセットです。gene1 列は疾患 1 に属し、gene2 列は疾患 2 に属します。主に、gene1 と遺伝子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または任意のソフトウェアでこれを行うための提案はありますか?

ありがとう ここに画像の説明を入力

私が実行しているコード:

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 を実行すると、プロットされるラベルが多すぎて、ヒントが乱雑になります。

私の変更されたデータセットは現在、遺伝子用と疾患用の 2 つの列のみです。

4

2 に答える 2

4

ああ、私は前にこれをやったことがあります。apeブライアンが言ったように、あなたはパッケージを使いたいと思っています。hclustオブジェクトがあるとしましょう。例えば、

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

木の端の色を変更したい場合はcutreetip.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) 

どのタイプのクラスタリング方法を使用したいかはわかりませんが (私はウォードの方法を使用していました)、それがあなたのやり方です。

于 2014-02-04T23:57:18.473 に答える