使用TSNE口可视化工具显示 数据建模-聚类分析-K-Means算法

#-*- coding: utf-8 -*-import sys
reload(sys)
sys.setdefaultencoding('utf-8')import pandas as pd
from sklearn.cluster import KMeansinputfile = '../data/consumption_data.xls'
outputfile = './data_type.xls'k =3    #聚类的级别
iteration = 500    #剧烈最大循环次数data = pd.read_excel(inputfile, index_col='Id')
data_zs = 1.0 *(data-data.mean())/data.std()    #数据标准化model = KMeans(n_clusters=k, n_jobs=4, max_iter=iteration)    #分为k类,并发数4
model.fit(data_zs)    #开始聚类,训练模型#简单打印结果
r1 = pd.Series(model.labels_).value_counts()    #统计各个类别的数目
r2 = pd.DataFrame(model.cluster_centers_)    #找出聚类中心
r = pd.concat([r2, r1], axis=1)    #横向连接(0是纵向),得到聚类中心对应的类别下的数目
r.columns = list(data.columns) + [u'类别数目']    #重命名表头
#print(r)#详细输出原始数据及其类别r = pd.concat([data, pd.Series(model.labels_, index=data.index)], axis=1)    #详细输出每个样本对应的类别
r.columns = list(data.columns) + [u'聚类类别']    #重命名表头
r.to_excel(outputfile)    #保存结果from sklearn.manifold import TSNE    #聚类可视化工具tsne = TSNE()
tsne.fit_transform(data_zs)    #进行降维
tsne = pd.DataFrame(tsne.embedding_, index=data_zs.index)    #转换数据格式import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False#不同类别用不同颜色和样式绘图d = tsne[r[u'聚类类别']==0]
plt.plot(d[0], d[1], 'r.')d = tsne[r[u'聚类类别']==1]
plt.plot(d[0], d[1], 'go')d = tsne[r[u'聚类类别']==2]
plt.plot(d[0], d[1], 'b*')plt.show()

输出二维显示如下:

数据建模-聚类分析-K-Means算法 --聚类可视化工具TSNE相关推荐

  1. kmeans改进 matlab,基于距离函数的改进k―means 算法

    摘要:聚类算法在自然科学和和社会科学中都有很普遍的应用,而K-means算法是聚类算法中经典的划分方法之一.但如果数据集内相邻的簇之间离散度相差较大,或者是属性分布区间相差较大,则算法的聚类效果十分有 ...

  2. 数据建模java_数据建模及常见分类算法

    数据建模及常见分类算法 数据建模指的是对现实世界各类数据的抽象组织,建立一个适合的模型对数据进行处理.建模流程解读 建模数据的抽取,清洗和加工以及建模算法的训练和优化会涉及大量的计算机语言和技术.比如 ...

  3. 数据建模及常见分类算法

    数据建模及常见分类算法 数据建模指的是对现实世界各类数据的抽象组织,建立一个适合的模型对数据进行处理.建模流程解读 建模数据的抽取,清洗和加工以及建模算法的训练和优化会涉及大量的计算机语言和技术.比如 ...

  4. 旧金山大学数据结构和算法的可视化工具

    旧金山大学数据结构和算法的可视化工具,动态展示数据存储和查询: http://www.cs.usfca.edu/~galles/visualization/Algorithms.html

  5. k means算法C语言伪代码,K均值算法(K-Means)

    1. K-Means算法步骤 算法步骤 收敛性定义,畸变函数(distortion function): 伪代码: 1) 创建k个点作为K个簇的起始质心(经常随机选择) 2) 当任意一个点的蔟分配结果 ...

  6. 数据建模-聚类分析-K-Means算法

    常用聚类方法 类别 包括主要算法 划分(分裂)方法 K-Means算法(K-平均).K-MEDOIDS算法(K-中心点).CLARANS算法(基于选择的算法) 层次分析方法 BIRCH算法(平衡迭代规 ...

  7. python 聚类分析 k means

    Kmeans 是一种动态聚类方法,其基本思想是:首先随机选取 K 个点作为初始凝聚点,按照距离最近原则划分为 K 类:然后重新计算 K 个类的重心作为新的凝聚点,再按照距离最近原则重新分类:重复这一过 ...

  8. k均值聚类算法(K Means)及其实战案例

    算法说明 K均值聚类算法其实就是根据距离来看属性,近朱者赤近墨者黑.其中K表示要聚类的数量,就是说样本要被划分成几个类别.而均值则是因为需要求得每个类别的中心点,比如一维样本的中心点一般就是求这些样本 ...

  9. K 均值算法-如何让数据自动分组

    公号:码农充电站pro 主页:https://codeshellme.github.io 目录 1,K 均值算法 2,K 均值算法聚类过程 3,K 均值算法的实现 4,准备数据点 5,对数据聚类 6, ...

最新文章

  1. NUnit2.0详细使用方法
  2. Python基本数据类型之整型
  3. C# 实现ReadInt()直接输入数字的函数 含有检错功能
  4. 使用Python批量压缩图片
  5. docker 随笔记录
  6. Notepad++没有插件管理器(Plugin Manager)的解决方法
  7. 创建和管理CVSNT服务器的步骤
  8. 在 Linux 系统上源码安装 GTK+ 2.0
  9. mysql成绩是什么数据类型_mysql数据类型
  10. 智慧化工园区解决方案
  11. 详解数据库三大范式、BCNF范式
  12. 《关键对话》思维导图
  13. 网站安全不可忽视--一个收费网站的破解过程
  14. 常见的几种网络Hack方式
  15. js:按钮绑定多个事件的三种方法(js,DOM,jQuery)
  16. python中fig_Matplotlib画图中fig,ax,plt的区别和联系
  17. 【历史上的今天】10 月 25 日:Windows XP 诞生;任正非出生;图灵奖编程语言先驱诞生
  18. 各个无人超市品牌使用的技术!
  19. CPU微架构资源及监测
  20. 教你如何找到别人不要的亚马逊listing来卖货赚钱

热门文章

  1. linux使用open无法打开驱动解决方式
  2. php如何给单选框加js事件,js给元素添加绑定事件
  3. MySQL:too many connections
  4. Vue2+WebPack2使用css/sass+postcss的autoprefixer
  5. Linux 不小心删除了 root,root目录不小心删除了怎么办……
  6. CSS3特效 - 会呼吸的button按钮
  7. 纯css实现给图片加标签
  8. vue+iview后台管理模板
  9. 怎么创建python django项目_python怎么创建django
  10. 积分下载插件 for typecho 测试版 附教程