前提・実現したいこと
すでに計算された、Nクラス間の非類似度の行列(N*N)を元に、階層的クラスタリングを行い、デンドログラムを作成することを行いたいです。
起きている問題(sklearn, scipyそれぞれ)
- sklearnの場合:affinityを
precomputed
にするとnクラスタに分けてくれるが、デンドログラムを描く方法が見当たらない
clustering = AgglomerativeClustering(n_clusters=n, affinity='precomputed', linkage='average').fit(X)
- scipyの場合:デンドログラムを表示できるが、既計算の行列を用いたmetricがわからなく、sklearnと同じ結果が得られない(知識力の不足の可能性も高いです。)
Y = hierarchy.linkage(X, method='average') plt.figure() dn = hierarchy.dendrogram(Y) plt.show()
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
python3.6
以上、よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/12 09:02