5

ツリー(Javaプログラムの出力)をRの樹状図に変換するにはどうすればよいですか?

現在、ここに示す提案を使用して、ツリーをNewick形式に変換しています。次にape、Rのパッケージを使用して、Newick形式のツリーを読み取ります。

library("ape")
cPhylo <- read.tree(file = "gc.tree")

最後にas.hclust、Rでツリーを樹状図に変換するために使用します。

dendrogram <- as.hclust(gcPhylo)

ただし、樹状図には枝の長さが必要です。ブランチの長さを挿入しましたが、ツリーが超距離ではないというエラーが表示されます。

as.hclust.phylo(gcPhylo)のエラー:ツリーは超距離ではありません

ブランチの長さを挿入しているときに、何か問題が発生していると思います。

私が従うことができる他の方法はありますか?または、ツリーをNewick形式に変換するときに、ブランチの長さを挿入するにはどうすればよいですか?ブランチの長さを等しくしても問題ありません。

4

3 に答える 3

2

問題は、実際には「gc.tree」が超距離ではないことだと思います。ルートから各チップまでの距離が同じであることを確認してください。次のコードが機能します。

library('ape')
tree <- read.tree(text='(((A:4.2,B:4.2):3.1,C:7.3):6.3,D:13.6);')
is.ultrametric(tree)
is.binary.tree(tree)
is.rooted(tree)
hc <- as.hclust.phylo(tree)

ただし、ツリーを非超距離にします(Dのブランチの長さに注意してください)。

tree <- read.tree(text='(((A:4.2,B:4.2):3.1,C:7.3):6.3,D:15);')

as.hclust.phyloはエラーを発生させます。

于 2011-11-20T21:45:57.163 に答える