python-kmeans

来源:互联网 发布:网民网络视频 编辑:程序博客网 时间:2024/05/17 20:01
import numpy as npfrom sklearn.cluster import KMeansdef loadData(filePath):    fr=open(filePath,'r+')    lines=fr.readlines()    rownum=len(lines)    retData=[]    retCityName=[]    #skipe the first row    for line in range(1,rownum):        items=lines[line].strip().split("\t")        retCityName.append(items[0])        retData1=[]        for i in range(1,len(items)):            retData1.append(float(items[i]))         retData.append(retData1)    fr.close()        return retData,retCityName    if __name__=='__main__':    data,cityName=loadData('d:/test/city.txt')    km=KMeans(n_clusters=3)    label=km.fit_predict(data)    expenses=np.sum(km.cluster_centers_,axis=1)    #print(expenses)    CityCluster=[[],[],[]]    for i in range(len(cityName)):        CityCluster[label[i]].append(cityName[i])            for i in range(len(CityCluster)):        print("Expenses:%.2f"% expenses[i])        print(CityCluster[i])