无监督学习之聚类1——kmeans

miller_fu miller_fu     2022-09-27     269

关键词:

Kmeans算法分析31省市消费水平

#coding=utf-8

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))])
        #将数据中的其他data转化为float后加到retData中
    return retData,retCityName



if __name__ == ‘__main__‘:
    data,cityName = loadData(‘F:datacity.txt‘)
    km = KMeans(n_clusters=4) #分成的簇的数目
    label = km.fit_predict(data)#计算簇中心及为簇分配序号
    expenses = np.sum(km.cluster_centers_, axis=1) #axis按行求和

    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])

  运算后;

Expenses: 4512.27
[‘江苏‘, ‘安徽‘, ‘湖南‘, ‘湖北‘, ‘广西‘, ‘海南‘, ‘四川‘, ‘云南‘]
Expenses: 7754.66
[‘北京‘, ‘上海‘, ‘广东‘]
Expenses: 5678.62
[‘天津‘, ‘浙江‘, ‘福建‘, ‘重庆‘, ‘西藏‘]
Expenses: 3788.76
[‘河北‘, ‘山西‘, ‘内蒙古‘, ‘辽宁‘, ‘吉林‘, ‘黑龙江‘, ‘江西‘, ‘山东‘, ‘河南‘, ‘贵州‘, ‘陕西‘, ‘甘肃‘, ‘青海‘, ‘宁夏‘, ‘新疆‘]

《python机器学习及实践》----无监督学习之数据聚类

本片博客是根据《Python机器学习及实践》一书中的实例,所有代码均在本地编译通过。数据为从该书指定的百度网盘上下载的,或者是sklearn自带数据下载到本地使用的。代码片段:#coding:utf-8#分别导入numpy、matplotlib以... 查看详情

[机器学习][k-means]无监督学习之k均值聚类

..."总结"出一些规律和特征进行分类,这样的方法我们成为无监督学习(Unsupervisedlearning)。在无标签的数据集中进行分类的方法成为聚类。 查看详情

无监督学习之rbm和autoencoder

几种学习方式半监督学习TransferLearningSelf-talkLearningRBMRBM的类别BoltzmannMachineRestrictedBoltzmannMachineEvaluationInferenceTraining网络结构训练过程概率分布计算与GibbsSampling对比散度ContrastiveDivergence泛化实例AutoEncoder特点实例有标签的数据 查看详情

无监督学习之rbm和autoencoder(代码片段)

几种学习方式半监督学习TransferLearningSelf-talkLearningRBMRBM的类别BoltzmannMachineRestrictedBoltzmannMachineEvaluationInferenceTraining网络结构训练过程概率分布计算与GibbsSampling对比散度ContrastiveDivergence泛化实例AutoEncoder特点实例有标签的数据 查看详情

《python机器学习及实践》----无监督学习之特征降维

本片博客是根据《Python机器学习及实践》一书中的实例,所有代码均在本地编译通过。数据为从该书指定的百度网盘上下载的,或者是sklearn自带数据下载到本地使用的。代码片段:#coding:utf-8importnumpyasnpM=np.array([[1,... 查看详情

《python机器学习及实践》----无监督学习之特征降维

本片博客是根据《Python机器学习及实践》一书中的实例,所有代码均在本地编译通过。数据为从该书指定的百度网盘上下载的,或者是sklearn自带数据下载到本地使用的。代码片段:#coding:utf-8importnumpyasnpM=np.array([[1,... 查看详情

5.1_非监督学习之sckit-learn(代码片段)

 非监督学习之k-meansK-means通常被称为劳埃德算法,这在数据聚类中是最经典的,也是相对容易理解的模型。算法执行的过程分为4个阶段。1.首先,随机设K个特征空间内的点作为初始的聚类中心。2.然后,对于根据每个数据的... 查看详情

sparkmllib聚类学习之kmeans聚类

SparkMLlib聚类学习之KMeans聚类(一),KMeans聚类 k均值算法的计算过程非常直观:     1、从D中随机取k个元素,作为k个簇的各自的中心。     2、分别计算剩下的元素到k个簇中心的相异度,... 查看详情

3.监督学习之回归及归纳偏好

1.1.2回归同样,用一个简单的例子来说明回归。这次我变成一个天气爱好者,想知道每天不同时间的气温。预测函数的输入是时间,输出是该时间的气温。回归也需要训练数据,这里的数据是我记录的一天当中若... 查看详情

3.监督学习之回归及归纳偏好

1.1.2回归同样,用一个简单的例子来说明回归。这次我变成一个天气爱好者,想知道每天不同时间的气温。预测函数的输入是时间,输出是该时间的气温。回归也需要训练数据,这里的数据是我记录的一天当中若... 查看详情

2.监督学习之分类

1.1监督学习机器学习的第一种范式是监督学习(Supervisedlearning),学习的目标是根据输入预测输出的函数。例如,输入是患者的检查数据,输出是疾病的诊断结果;输入是动物图片,输出是它们的名称&... 查看详情

机器学习笔记-监督学习之决策树

0机器学习中分类和预测算法的评估:准确率速度健壮性可规模性可解释性1决策树(判定树)的概念  决策树是一个类似于流程图的树结构(可以是二叉树或多叉树):其中,每个内部结点表示在一个属性上的测试,每个分支... 查看详情

算法笔记:kmeans聚类算法简介

算法笔记:Kmeans聚类算法简介1.Kmeans算法简介2.Kmeans算法细节3.Kmeans算法收敛性证明4.Kmeans算法的变体1.cosine距离变体2.点积距离版本5.Kmeans算法实现1.基于sklearn的kmeans算法2.python自实现6.参考链接1.Kmeans算法简介Kmeans算是非常经... 查看详情

如何评估 R 中的 kmeans 聚类性能

】如何评估R中的kmeans聚类性能【英文标题】:HowtoevaluatekmeansclusteringperformanceinR【发布时间】:2021-06-1008:38:04【问题描述】:我对如何使用kmeans聚类计算聚类性能感到困惑。如果在监督学习中我们使用混淆矩阵来计算分类性能。... 查看详情

第十篇:k均值聚类(kmeans)

...    本文讲解如何使用R语言进行KMeans均值聚类分析,并以一个关于人口出生率死亡率的实例演示具体分析步骤。聚类分析总体流程1.载入并了解数据集;2.调用聚类函数进行聚类;3.查看聚类结果描述;4.将聚类结果... 查看详情

Matlab:kmeans聚类给出了意想不到的聚类

】Matlab:kmeans聚类给出了意想不到的聚类【英文标题】:Matlab:kmeansclusteringgivesunexpectedclusters【发布时间】:2015-07-1312:22:18【问题描述】:例子:loadkmeansdata%providesXvariableY=bsxfun(@minus,X,mean(X,2))\'/sqrt(size(X,2)-1);%normalizedandmeansadjust 查看详情

绘制一维数据的 KMeans 聚类和分类

】绘制一维数据的KMeans聚类和分类【英文标题】:PlotKMeansclustersandclassificationfor1-dimensionaldata【发布时间】:2019-07-1709:49:05【问题描述】:我正在使用KMeans对具有不同特征的三个时间序列数据集进行聚类。出于可重复性的原因,... 查看详情

scikit-learn的kmeans聚类

1.生成随机的二维数据:importnumpyasnpx1=np.array([1,2,3,1,5,6,5,5,6,7,8,9,9])x2=np.array([1,3,2,2,8,6,7,6,7,1,2,1,3])x=np.array(list(zip(x1,x2))).reshape(len(x1),2)#先将x1和x2用zip组合,然后再转换成list,最后reshapeprint(x)  2 查看详情