数据集特征提取_基于PCA算法实现鸢尾花数据集的特征提取任务

PCA算法的必要性

多变量大数据集无疑会为研究和应用提供丰富的信息,但是许多变量之间可能存在相关性,从而增加了问题分析的复杂性。如果分别对每个指标进行分析,分析往往是孤立的,不能完全利用数据中的信息,因此盲目减少指标会损失很多有用的信息,从而产生错误的结论。

因此如果可以在减少需要分析的指标同时,尽量减少原指标包含信息的损失,那么将有利于算法模型的搭建。由于各变量之间存在一定的相关关系,因此可以考虑将关系紧密的变量变成尽可能少的新变量,使这些新变量是两两不相关的,那么就可以用较少的综合指标分别代表存在于各个变量中的各类信息。PCA算法就属于这类降维算法。

我们所使用的数据集

Iris 鸢尾花数据集是一个经典数据集,在统计学习和机器学习领域都经常被用作示例。数据集内包含 3 类共 150 条记录,每类各 50 个数据,每条记录都有 4 项特征:花萼长度、花萼宽度、花瓣长度、花瓣宽度。数据集的部分数据如下所示:

551be5f03d4d12fcae5b2760bcf9bd24.png

可以看出这个数据集中的数据分为5列,也就是5个特征,5个维度,这5个列分别是:鸢尾花的花萼长度、花萼宽度、花瓣长度、 花瓣宽度、以及花的类别。这样的5个维度很难通过可视化的方式,所以下面我们将通过PCA算法来完成降维的操作,将5维数据将成2维。

数据的读取

下面我们先读取文件中的数据,并且为每列数据指定其列名,这样更加的有利于查看我们读取到数据。

import numpy as npimport pandas as pddf=pd.read_csv('iris.data')df.columns=['sepal_len','sepal_wid','petal_len','petal_wid','class']print(df.hean())
217e123f7affcad77d1e3f9f3430c1df.png

部分数据

可视化

dd168afd77c2317daf9b63198dc2f28e.png

可视化代码

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值