假设我正在研究最多10个聚类,使用scipy库通常按以下方式生成“肘部”图:
from scipy import cluster
cluster_array = [cluster.vq.kmeans(my_matrix, i) for i in range(1,10)]
pyplot.plot([var for (cent,var) in cluster_array])
pyplot.show()
我之后变得有动力使用sklearn进行聚类,但是我不确定如何创建需要用于绘图的数组,就像在scipy的情况中一样。我的最佳猜测是:
from sklearn.cluster import KMeans
km = [KMeans(n_clusters=i) for i range(1,10)]
cluster_array = [km[i].fit(my_matrix)]
不幸的是,这导致了一个无效命令错误。sklearn最好的方式是什么?
谢谢
score = [KMeans(i).fit(my_matrix).score(my_matrix) for i in Ks]
- ExtractTable.commy_matrix
是如何定义的? - jbehrens94