python---sklearn---kmeans,,#http://bl
python---sklearn---kmeans,,#http://bl
#
http://blog.csdn.net/github_36326955/article/details/54999627
# -*- coding: utf-8 -*-import numpy as npimport matplotlib.pyplot as pltfrom sklearn.datasets.samples_generator import make_blobsimport sklearnX,y = make_blobs(n_samples=1000,n_features=2,centers=[[-1,-1],[0,0],[1,1],[2,2]],cluster_std=[0.4,0.2,0.2,0.2] ,random_state=9)plt.scatter(X[:,0],X[:,1],marker=‘o‘)plt.show()from sklearn.cluster import KMeansy_pred = KMeans(n_clusters=2,random_state=9).fit_predict(X)plt.scatter(X[:,0],X[:,1],c=y_pred)plt.show()from sklearn import metricsprint(metrics.calinski_harabaz_score(X,y_pred))y_pred = KMeans(n_clusters=3,random_state=9).fit_predict(X)plt.scatter(X[:,0],X[:,1],c=y_pred)plt.show()print(metrics.calinski_harabaz_score(X,y_pred))y_pred = KMeans(n_clusters=4,random_state=9).fit_predict(X)plt.scatter(X[:,0],X[:,1],c=y_pred)plt.show()print(metrics.calinski_harabaz_score(X,y_pred))from sklearn.cluster import MiniBatchKMeans#MiniBatchKMeansfor index,val in enumerate((2,3,4,5)): plt.subplot(2,2,index+1) y_pred = MiniBatchKMeans(n_clusters=val, batch_size=200,random_state=9).fit_predict(X) score = metrics.calinski_harabaz_score(X,y_pred) plt.scatter(X[:,0],X[:,1],c=y_pred) plt.text(0.99,0.01,(‘val=%d, score:%.2f‘%(val,score)),transform=plt.gca().transAxes,size=10, horizontalalignment=‘right‘)plt.show()
python代码实现可参考:
http://blog.csdn.net/dream_angel_z/article/details/46343597
python---sklearn---kmeans
评论关闭