qq_蔓草儿_0
from sklearn.cluster import KMeans
from numpy import *
import matplotlib.pyplot as plt
# 解决中文乱码
plt.rcParams['font.family'] = 'SimHei' # 指定黑体(系统自带)
plt.rcParams['axes.unicode_minus'] = False # 解决负号乱码
if __name__=="__main__":
#创建数据集
data=array([[2,10],[2,5],[8,4],[5,8],[7,5],[6,4],[1,2],[4,9]])
sse=[]
for i in range(1,9):
mid=KMeans(n_clusters=i,init='random',n_init=10,max_iter=200)
mid.fit(data)
sse.append(mid.inertia_)
plt.plot(range(1,9),sse,marker="o")
plt.title("调优")
plt.xlabel("聚类个数k");plt.ylabel("误差SSE")
plt.show()#直接用sklearn包进行kmeans聚类也可以
#column_stack是什么我也不知道,反正就是后面得是(())2个括号
慕圣8516502
慕圣8516502
qq_慕粉3165614
横纵坐标分别求均值就是质心坐标
libo111
weixin_慕后端1330989
weixin_慕后端1330989
H(D|A) = -(5/15H(D1) + 5/15H(D2) + 5/15H(D3)) 这里前面的负号应该去掉。熵的负号也只是为了变为正数而出现(因为log导致存在负数)
慕桂英7345909
有的,后期会上线~
喀什士
是的,抱歉疏漏
程研板
目前免费课程暂时不提供代码,抱歉~
课程中代码行数不是很多,建议跟着课程手敲一遍,对所学知识会有更深刻的体会和理解~