聚类-31省市居民家庭消费水平-city

===分三类的=====

======分四类的========

直接写文件名,那么你的那个txt文件应该是和py文件在同一个路径的

 

============code===========

import numpy as np
from sklearn.cluster import KMeans
def loadData(filePath):
    fr = open(filePath,'r+')
    lines = fr.readlines()
    retData = []
    retCityName = []
    for line in lines:
        items = line.strip().split(",")
        retCityName.append(items[0])
        retData.append([float(items[i]) for i in range(1,len(items))])
    for i in range(1,len(items)):
        return retData,retCityName
if __name__ == '__main__':
    data,cityName=loadData('city.txt')
    km = KMeans(n_clusters=3)
    label = km.fit_predict(data)
    expenses = np.sum(km.cluster_centers_,axis=1)
    #print(expense)
    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])
    =========

  1. import numpy as np
  2. from sklearn.cluster import KMeans
  3.  
  4.  
  5. def loadData(filePath):
  6.     fr open(filePath,'r+')
  7.     lines fr.readlines()
  8.     retData []
  9.     retCityName []
  10.     for line in lines:
  11.         items line.strip().split(",")
  12.         retCityName.append(items[0])
  13.         retData.append([float(items[i]) for in range(1,len(items))])
  14.     return retData,retCityName
  15.  
  16.      
  17. if __name__ ='__main__':
  18.     data,cityName loadData('city.txt')
  19.     km KMeans(n_clusters=4)
  20.     label km.fit_predict(data)
  21.     expenses np.sum(km.cluster_centers_,axis=1)
  22.     #print(expenses)
  23.     CityCluster [[],[],[],[]]
  24.     for in range(len(cityName)):
  25.         CityCluster[label[i]].append(cityName[i])
  26.     for in range(len(CityCluster)):
  27.         print("Expenses:%.2f" expenses[i])
  28.         print(CityCluster[i])

转载于:https://www.cnblogs.com/wanghui626/p/10361631.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值