K均值算法
1). 扑克牌手动演练k均值聚类过程:>30张牌,3类
第一次选取聚类中心为(2,10,13)
得出第二次的聚类中心为(3,9,12)
得出第三次的聚类中心为(3,8,12)
重复上述操作,最终聚类中心稳定出现在(3,8,12),则确定出聚类中心。
3). 用sklearn.cluster.KMeans,鸢尾花花瓣长度数据做聚类,并用散点图显示.
import matplotlib.pyplot as plt import numpy as np from sklearn.datasets import load_iris from sklearn.cluster import KMeans iris = load_iris().data sl =iris[:,2] X = sl.reshape(-1,1) X.shape est = KMeans(n_clusters=3) est.fit(X) est.predict([[3.5]]) y_kmeans = est.predict(X) est.cluster_centers_ est.labels_ plt.scatter(X[:,0],X[:,0],c=y_kmeans,s=50,cmap="rainbow") plt.show()
4). 鸢尾花完整数据做聚类并用散点图显示.
import matplotlib.pyplot as plt from sklearn.datasets import load_iris from sklearn.cluster import KMeans data=load_iris() x=data.data y=KMeans(n_clusters=3) y.fit(x) y_pre=y.predict(x) plt.scatter(x[:,2],x[:,3],c=y_pre,s=100,cmap='rainbow',alpha=0.5) plt.show()
5).想想k均值算法中以用来做什么?
聚类能过帮助营销人员改善他们的客户群(在其目标区域内工作),并根据客户的购买历史、兴趣或活动监控来对客户类别做进一步细,对客户进行分类有助于公司针对特定客户群制定特定的广告。面向大众公开的乘车信息的数据集,为我们提供了大量关于交通、运输时间、高峰乘车地点等有价值的数据集。分析这些数据有助于我们对城市的交通模式进行深入的了解,来帮助我们做城市未来规划。