K表示scikit学习中的聚类

时间:2016-11-23 03:42:02

标签: python scikit-learn cluster-analysis k-means

我正在尝试做k意味着在scikit中进行聚类学习。代码:

from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters = 10)
x = df.values
kmeans.fit(x.reshape(-1, 1))

如果参数n_init = random,它会选择随机的初始质心。有没有办法获取使用的初始质心?

2 个答案:

答案 0 :(得分:2)

在将KMeans对象插入数据后,您才能获得群集中心。

小技巧!

所以你可以做的是将参数max_iter设置为1。默认情况下,它设置为300,然后中心可能会在每次迭代时更改。

如果您使用仅一次迭代,算法会将每个样本分配到初始中心,然后它将停止,而不是更新中心。

因此,调用.cluster_centers_将返回初始质心!

答案 1 :(得分:-2)

是的,我认为您可以在致电centroids = kmeans.cluster_centers_

之前尝试fit()