【发布时间】:2018-01-05 23:13:44
【问题描述】:
我正在尝试围绕每个质心绘制圆,半径延伸到属于每个集群的最远点。现在我的圆圈绘制的半径延伸到整个训练数据集中离集群中心最远的点
这是我的代码:
def KMeansModel(n):
pca = PCA(n_components=2)
reduced_train_data = pca.fit_transform(train_data)
KM = KMeans(n_clusters=n)
KM.fit(reduced_train_data)
plt.plot(reduced_train_data[:, 0], reduced_train_data[:, 1], 'k.', markersize=2)
centroids = KM.cluster_centers_
# Plot the centroids as a red X
plt.scatter(centroids[:, 0], centroids[:, 1],
marker='x', color='r')
for i in centroids:
print np.max(metrics.pairwise_distances(i, reduced_train_data))
plt.gca().add_artist(plt.Circle(i, np.max(metrics.pairwise_distances(i, reduced_train_data)), fill=False))
plt.show()
out = [KMeansModel(n) for n in np.arange(1,16,1)]
【问题讨论】:
标签: python machine-learning scikit-learn cluster-analysis k-means