聚类分类案例

01.根据数据集testSet2.txt,利用sklearn里的Kmeans算法完成聚类分类,并画出图形。
import numpy as np
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

#载入数据
dataSet=np.genfromtxt('testSet2.txt')
plt.scatter(dataSet[:,0],dataSet[:,1],c='r')
#建立模型
KM=KMeans(n_clusters=4)#n_cluters代表分成几簇
#训练模型
KM.fit(dataSet)
#分类中心点坐标(簇的质心)
centers=KM.cluster_centers_#最终的聚类的质心
print(centers)
#预测结果
result=KM.predict(dataSet)
print('分簇结果:',result)

在这里插入图片描述

mark=['^r','sb','*g','oy']
for i,d in enumerate(dataSet):
    plt.plot(d[0],d[1],mark[result[i]])#这里没用scatter因为给的mark是颜色和形状的结合
    #但plot属性间
    
markcentor=['+r','+b','+g','+y']
for i,centor in enumerate(centers):
    plt.plot(centor[0],centor[1],markcentor[i],markersize=30)

在这里插入图片描述

plt.scatter(dataSet[result==0,0],dataSet[result==0,1],s=30,c='orange',
           marker='o',label='cluster=1')
plt.scatter(dataSet[result==1,0],dataSet[result==1,1],s=30,c='green',
           marker='s',label='cluster=2')
plt.scatter(dataSet[result==2,0],dataSet[result==2,1],s=30,c='blue',
           marker='o',label='cluster=3')
plt.scatter(dataSet[result==3,0],dataSet[result==3,1],s=30,c='red',
           marker='*',label='cluster=4')

plt.scatter(centers[:,0],centers[:,1],s=500,marker="+",c='red',label='cluster center')
plt.legend(loc='lower left',bbox_to_anchor=(-0.4,0.5,0.1,0.1))
plt.show()

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

侬本多情。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值