24

2 つのデンドログラムがあり、それらがどの程度「似ている」かを調べるために比較したいと考えています。しかし、私はそうする方法を知りません(Rでそれを実装するコードは言うまでもありません)。

リードはありますか?

更新(2014-09-13):

この質問をして以来、デンドログラムの視覚化、操作、および比較のために、 dendextendという R パッケージを作成しました。このパッケージはCRANにあり、詳細なビネットが付属しています。、、/などの関数が含まれます。2 つのツリーを視覚的に比較するための関数と同様。cor_copheneticcor_bakers_gammaBkBk_plottanglegram

4

6 に答える 6

17

デンドログラムの比較は、階層型クラスタリングの比較とはまったく同じではありません。前者には、枝の長さと分割の長さが含まれるためです。しかし、それは良い出発点でもあると思います。EB Fowlkes & CL Mallows (1983) を読むことをお勧めします。「2 つの階層的クラスタリングを比較する方法」。Journal of the American Statistical Association 78 (383): 553–584 (リンク) .

彼らのアプローチは、各レベルkでツリーを切断し、グループ化をkクラスターに比較する尺度Bkを取得し、次にBkkプロットを調べることに基づいています。尺度Bkは、オブジェクトのペアを見て、それらが同じクラスターに分類されるかどうかを確認することに基づいています。

この方法に基づいてコードを書くことができると確信していますが、まず、樹形図が R でどのように表現されるかを知る必要があります。

于 2010-02-08T14:16:06.123 に答える
5

ご存知のように、デンドログラムは階層的クラスタリングから発生します。したがって、実際に求めているのは、2 つの階層的クラスタリングの実行結果を比較するにはどうすればよいかということです。私が知っている標準的な指標はありませんが、見つかったクラスターの数を調べて、同様のクラスター間のメンバーシップの類似性を比較します。 これは、同僚がスコッチ ウイスキーのクラスタリングについて書いた、階層的クラスタリングの優れた概要です

于 2010-02-08T05:29:12.403 に答える
3

このページを見てください:

ここにも同様の質問があります

コフェネティック相関を使用して、2 つのデンドログラム間の類似性を測定できるようです。しかし、現在Rにはこの目的のための機能はないようです。

2014 年 9 月 18 日の編集:パッケージ内 のcophenetic関数はstats、コフェネティック非類似度行列を計算できます。相関関係は、関数を使用して計算できますcor。@Talが指摘したように、as.dendrogram関数は異なる順序でツリーを返しました。これにより、樹状図の結果に基づいて相関を計算すると、間違った結果が生じます。パッケージ内の関数cor_cophenetic関数の例に示すように:dendextend

set.seed(23235)
ss <- sample(1:150, 10 )
hc1 <- iris[ss,-5] %>% dist %>% hclust("com")
hc2 <- iris[ss,-5] %>% dist %>% hclust("single")
dend1 <- as.dendrogram(hc1)
dend2 <- as.dendrogram(hc2)
# cutree(dend1)
cophenetic(hc1)
cophenetic(hc2)
# notice how the dist matrix for the dendrograms have different orders:
cophenetic(dend1)
cophenetic(dend2)
cor(cophenetic(hc1), cophenetic(hc2)) # 0.874
cor(cophenetic(dend1), cophenetic(dend2)) # 0.16
# the difference is becasue the order of the distance table in the case of
# stats:::cophenetic.dendrogram will change between dendrograms!
于 2014-09-12T03:13:16.337 に答える
1

樹状図を含む、樹木を扱うソフトウェアに関する多くの情報が掲載されているこのページをご覧ください。個人的にはまだ使用していませんが、ツリーの比較を処理するいくつかのツールに気づきました。そこにも引用されている参考文献がたくさんあります。

于 2011-05-14T20:54:31.583 に答える
1

各デンドログラムを生成した基礎となる距離行列にアクセスできる場合 (R でデンドログラムを生成した場合はおそらくアクセスできます)、2 つの行列の対応する値の間の相関を使用することはできませんか? これがあなたの質問の文面に対応していないことは承知していますが、あなたの質問の精神に対する良い解決策です。

于 2010-02-07T23:13:06.797 に答える
1

コンピューター サイエンスの観点からは無視されてきたと思われる系統発生学コミュニティには、樹木距離メトリックに関する豊富な文献があります。ツリー パーティションの類似性を考慮した 2 つのツリー距離メトリックといくつかの引用 (Penny and Hardy 1985、Kuhner and Felsenstein 1994)、およびパッケージに R 実装を持つRobinson-Foulds メトリックdist.topoについては、パッケージを参照してください。apephangorn

1 つの問題は、これらのメトリクスには固定されたスケールがないことです。そのため、1) ツリーの比較、または 2) 生成されたベースラインとの比較の場合にのみ有用であり、おそらくタルがベイカーのガンマで行ったのと同様の順列テストを介して行われます。彼の素晴らしい dendextend パッケージ。

R階層クラスタリングから生成された hclust または樹状図オブジェクトがある場合as.phyloapeパッケージから を使用すると、これらの関数で使用するために樹状図が系統樹に変換されます。

于 2016-06-27T06:46:42.203 に答える