样本

代码:

import  matplotlib.pyplot as plt
from sklearn.decomposition import PCA
from sklearn.datasets import load_iris #加载鸢尾花数据集导入函数 data = load_iris()#加载数据,array([[5.1 3.5 1.4 0.2].....])
#print(data)
y = data.target #各50个 0,1,2 暂不明作用,
#print(y)
X = data.data
#print(X) #把array换成二维列表,数据不变
pca = PCA(n_components=2)#设置降维后主成分数目为2
reduce_X = pca.fit_transform(X) #对袁术数据进行降维[[-2.68412563 0.31939725]....]
print(reduce_X)
#按类别对降维后的数据进行保存
red_x, red_y = [], []
blue_x, blue_y = [], []
green_x, green_y = [], [] #按照鸢尾花的类别将降维后的数据点保存在不同的列表中
for i in range(len(reduce_X)):
if y[i] == 0:
red_x.append(reduce_X[i][0])
red_y.append(reduce_X[i][1])
elif y[i] == 1:
blue_x.append(reduce_X[i][0])
blue_y.append(reduce_X[i][1])
else:
green_x.append(reduce_X[i][0])
green_y.append(reduce_X[i][1]) #可视化 散点图
plt.scatter(red_x, red_y, c='r', marker='x')
plt.scatter(blue_x, blue_y, c='b', marker='D')
plt.scatter(green_x, green_y, c='g', marker='.')
plt.show()

效果图:

最新文章

  1. JS this指向问题
  2. BestCoder Round #43
  3. 【Android Studio】Android Studio 安装及设置
  4. 搭建windows下filezilla FTP服务器
  5. VS2015 C#.net4.6 windows的定时服务
  6. ASP.NET MVC学习系列 WebAPI初探
  7. mobile js
  8. 【网络协议】TCP的拥塞控制机制
  9. Mac环境下Myeclispe2015工具的安装与破解
  10. mongodb两次被黑后......
  11. 原生js 实现 Ajax 跨浏览器使用
  12. lsof命令详解
  13. 【python】函数闭包
  14. 7、JPA-映射-双向一对多
  15. yum -y 与yum有何区别(转载)
  16. 安装 VMWare ESXi 6.7:VMB: 548: Unsupported CPU:6.7版本的ESXi 不支持 某些cpu了
  17. java框架之SpringBoot(5)-SpringMVC的自动配置
  18. 4.4Python数据类型(4)之字符串函数
  19. 闭包传递(floyed)
  20. Diagnosing out of memory errors and memory leaks 内存泄露实例 C Java JavaScript 内存泄露

热门文章

  1. ThinkPHP5.0 漏洞测试
  2. shell编程之变量赋值
  3. [Docker4] Docker-machine进行多docker host管理
  4. 参加Folding@Home(FAH)项目,为战胜新冠肺炎贡献出自己的一份力量
  5. 关于Anaconda安装以后使用Jupyter Notebook无法直接打开浏览器的解决方法
  6. php 设置允许跨域请求
  7. Mayor's posters POJ - 2528 线段树(离散化处理大数?)
  8. 基于zookeeper实现分布式锁和基于redis实现分布所的区别
  9. java模拟栈的操作
  10. 作为 attribute 和 property 的 value 及 Vue.js 的相关处理