
132
5
章 クラスタリング
clusters = fcluster(Z, distance_threshold, criterion='distance')
X_train_hierClustered = \
pd.DataFrame(data=clusters,index=X_train_PCA.index,columns=['cluster'])
与えた距離閾値で、ちょうど
20
のクラスタが得られたかどうか確認してみよう。
print("Number of distinct clusters: ", \
len(X_train_hierClustered['cluster'].unique()))
期待した通り、
20
クラスタが得られた。
Number of distinct clusters: 20
結果を評価してみよう。
countByCluster_hierClust, countByLabel_hierClust, \
countMostFreq_hierClust, accuracyDF_hierClust, \
overallAccuracy_hierClust, accuracyByLabel_hierClust \
= analyzeCluster(X_train_hierClustered, y_train)
print("Overall accuracy from hierarchical clustering: ", \
overallAccuracy_hierClust) ...