3

以下のこのスクリプトは、巨大なデータ セットを含むクラスターを取得するために適切に実行されますが、R から他の編集プログラムにエクスポートできるように、クラスターを newick ファイルまたはテキスト ファイルに取得する必要がありますが、方法が見つかりません。 hclust を newick 形式に変換するにはどうすればよいですか? 私は new2phylo 関数が仕事をするかもしれないと感じていますが、私たちはそれをうまく機能させることができませんでした.

あらゆる場所を検索しましたが、解決策が見つからないため、ご協力をお願いいたします =(

datos <- read.table("morphclustersred.csv",header=T,sep="\t")
head(datos)
distfunc <- function(x) daisy(x,metric="gower")
d <- distfunc(datos)
hclustfunc <- function(x) hclust(x, method="complete")
fit <- hclustfunc(d)
plot(fit)
plot(fit, labels=datos$Species,main='Morphological Clustering')
rect.hclust(fit, k=5, border="red")
4

2 に答える 2

7

パッケージのwrite.tree関数を使用してそれを行うことができます。apeこれを試して:

library(ape)
class(fit) # must be hclust class
my_tree <- as.phylo(fit) 
write.tree(phy=my_tree, file="exported_tree.newick") # look for the file in your working directory

お役に立てれば。

于 2014-03-29T18:38:01.027 に答える
4

次の変換手順によってのみ、ヒートマップから .nwk 形式を抽出できました。

  • dendro --> hcclust --> phylo --> nwk

少しハックであることは知っていますが、コードは次のとおりです。

# Heatmap of data frame 'data' saved as 'heat'
heat <- heatmap.2(as.matrix(data))

# Extract dendrograms for rows and columns from 'heat'
row.dendro <- heat$rowDendrogram
col.dendro <- heat$colDendrogram

# Convert dendrograms to nwk (via .hcclust and .phylo formats!)
as.hclust (row.dendro)  ->row.hcclust
as.phylo  (row.hcclust) ->row.phylo
write.tree(row.phylo)   ->row.nwk

as.hclust (col.dendro)  ->col.hcclust
as.phylo  (col.hcclust) ->col.phylo
write.tree(col.phylo)   ->col.nwk
于 2014-11-27T22:44:36.490 に答える