-1
私は、大規模なデータ行列X
を持っていると私はそうのようウォード階層クラスタリングのscipyのダウンロードの実装を使用します。私は今X[i]
が属するクラス見たいX [i]はどのクラスターに属していますか?
Z = ward(X.todense())
fig = plt.figure(figsize=(25, 10))
dn = dendrogram(Z)
。これどうやってするの?
私は、大規模なデータ行列X
を持っていると私はそうのようウォード階層クラスタリングのscipyのダウンロードの実装を使用します。私は今X[i]
が属するクラス見たいX [i]はどのクラスターに属していますか?
Z = ward(X.todense())
fig = plt.figure(figsize=(25, 10))
dn = dendrogram(Z)
。これどうやってするの?
linkage
行列Z
から、scipy.cluster.hierarchy.fcluster
でクラスタを取得できます。
まず、dendrogram
の色と同じクラスターが必要だとします。 docsからは、color_threshold
が0.7*max(Z[:,2])
に設定されていることがわかります。それが私たちが使うものです。例えば
:
from sklearn.datasets import make_classification
from scipy.cluster.hierarchy import linkage, fcluster
X, y = make_classification(n_samples=10)
Z = linkage(X, method='ward')
thresh = 0.7*max(Z[:,2])
fcluster(Z, thresh, criterion='distance')
がHow to get flat clustering corresponding to color clusters in the dendrogram created by scipy
も参照してください。