首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >绘制KMeans模型

绘制KMeans模型
EN

Stack Overflow用户
提问于 2020-09-10 03:36:58
回答 1查看 60关注 0票数 0

我想绘制KMeans ML的质心,但我不明白。添加图形的图片。

代码语言:javascript
复制
from sklearn.cluster import KMeans
from sklearn import metrics
from sklearn.model_selection import train_test_split
y = np.radians(df["LATITUD"]) #series
x =  np.radians(df[["LONGITUD"]]) #dataframe
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.30, random_state=0)
KMeans =cluster.KMeans(n_clusters=5)
model2 = KMeans.fit(x_train, y_train)
model2 = KMeans.fit_predict(x_test)
centroids2 = np.array(KMeans.cluster_centers_)
labels = KMeans.labels_ 
K = 5
figure = plt.figure(figsize=(10,7))
plt.scatter(x_train, y_train, cmap="plasma", linewidths=1);
for k in range(K):
  plt.scatter(centroids2[k,0], centroids2[k, 1], s=100, marker='*', color='red')

plt.show()

输出: IndexError回溯(最近一次调用) in () 3 plt.scatter(x_train,y_train,cmap=“等离子”,linewidths=1);4 for k in range(K):->5 plt.scatter( centroids2k,0,centroids2k,1,s=100,IndexError=‘*’,s=100=‘red’)6 plt.show() IndexError:索引1超出了轴1的边界,大小为1

EN

回答 1

Stack Overflow用户

发布于 2020-09-10 04:03:41

似乎centroids2是一个向量,而不是您认为的矩阵,所以您不能使用k>0访问centroids2k,1。更准确地说,它可能是一个(1,2)矩阵,所以索引0工作得很好,但索引1超出了界限,因为第二行不存在。你能提供它的形状和/或你用来创建centroids2的代码吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63818457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档