Kmeans:利用Kmeans实现对多个点进行自动分类—Jason niu
import numpy as np def kmeans(X, k, maxIt): numPoints, numDim = X.shape dataSet = np.zeros((numPoints, numDim + 1)) dataSet[:, :-1] = X centroids = dataSet[np.random.randint(numPoints, size = k), :] centroids[:, -1] = range(1, k +1) iterations = 0 oldCentroids = None while not shouldStop(oldCentroids, centroids, iterations, maxIt): print ("iteration: \n", iterations) print ("dataSet: \n", dataSet) print ("centroids: \n", centroids) oldCentroids = np.copy(centroids) iterations += 1 updateLabels(dataSet, centroids) centroids = getCentroids(dataSet, k) return dataSet def shouldStop(oldCentroids,