当前位置:   article > 正文

[Python聚类] 用TSNE进行数据降维并展示聚类结果_tsne每次结果都不一样

tsne每次结果都不一样

聚类结果可视化工具TSNE

使用TSNE对KMeans聚类的结果以二维的方式展现出来。
接博客[Python聚类] K-Means聚类算法分类中的代码。

#-*- coding: utf-8 -*-
#接博客[Python聚类] K-Means聚类算法分类中的代码
from sklearn.manifold import TSNE

tsne = TSNE()
tsne.fit_transform(data_zs) #进行数据降维       
tsne = pd.DataFrame(tsne.embedding_, index = data_zs.index) #转换数据格式
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
>>>tsne.fit_transform(data_zs) #进行数据降维
array([[-26.155815  ,  -1.9875094 ],
       [ 12.832463  ,  25.537851  ],
       [  3.1898763 , -30.703415  ],
       ...,
       [  0.37199622,   2.2877667 ],
       [ -5.8555183 ,   7.3596044 ],
       [-11.370499  ,  12.9076395 ]], dtype=float32)

>>>tsne.head()
            0          1
Id
1  -26.155815  -1.987509
2   12.832463  25.537851
3    3.189876 -30.703415
4  -11.367756 -30.414982
5   14.839862  12.988671
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
import matplotlib.pyplot as plt
plt.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()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

这里写图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/343734
推荐阅读
相关标签
  

闽ICP备14008679号