当前位置:   article > 正文

数据分析案例-基于PCA主成分分析法对葡萄酒数据进行分析_pca数据示例(3)_适合主成分分析的数据案例

适合主成分分析的数据案例

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

①使用主成分分析对数据进行降维分析

②构建葡萄酒分类模型

2.2数据集介绍

wine样本数据集中是double类型的178 * 14矩阵包括了三种酒中13种不同成分的数量。文件中,每行代表一种酒的样本,共有178个样本,一共有14列,其中,第一个属性是类标识符,分别是1/2/3来表示,代表葡萄酒的三个分类。后面的13列为每个样本的对应属性的样本值。剩余的13个属性是,酒精、苹果酸、灰、灰分的碱度、镁、总酚、黄酮类化合物、非黄烷类酚类、原花色素、颜色强度、色调、稀释葡萄酒的OD280/OD315、脯氨酸。其中第1类有59个样本,第2类有71个样本,第3类有48个样本。具体属性描述如下:

属性属性描述
target类别
Alcohol酒精
Malic acid苹果酸
Ash
Alkalinity of ash灰分的碱度
Magnesium
Total phenoids总酚
Flavonoids黄酮类化合物
Noflavanoid phenols非黄烷类酚类
Proanthocyanins原花色素
Color intensity颜色强度
Hue色调
0D280/0315ofdiluted wines稀释葡萄酒的0D280/0315
proline脯氨酸

2.3技术工具

Python版本:3.9

编译工具:jupyter notebook

3.算法理论

主成分分析简介

主成分分析是数据降维算法的一种,降维是将高维度的数据(指标太多)保留下最重要的一些特征,去除噪声和不重要的特征,从而实现提升数据处理速度的目的。

主成分分析是利用降维的思想,在损失很少信息的前提下把多个指标转化为几个综合指标的多元统计方法。通常把转化生成的综合指标称之为主成分,其中每个主成分都是原始变量的线性组合,且各个主成分之间互不相关,这就使得主成分比原始变量具有某些更优越的性能。这样在研究复杂问题时就可以只考虑少数几个主成分而不至于损失太多信息,从而更容易抓住主要矛盾,揭示事物内部变量之间的规律性,同时使问题得到简化,提高分析效率。

主成分分析正是研究如何通过原来变量的少数几个线性组合来解释原来变量绝大多数信息的一种多元统计方法。

主成分分析的思想

假设有 n nn 个样本,p pp 个指标,则可构成大小为 n × p n\times pn×p 的样本矩阵 x xx:

主成分分析的计算步骤

假设有 n  个样本,p 个指标,则可构成大小为 n × p的样本矩阵 x :

1. 首先对其进行标准化处理:

2. 计算标准化样本查的协方差矩阵:

1、2步骤可以合成一步:

4. 计算主成分共享率以及累计贡献率:

5. 写出主成分:

6. 根据系数分析主成分代表的意义:

对于某个主成分而言,指标前面的系数越大,代表该指标对于该主成分的影响越大。

部分说明

一组数据是否可以用主成分分析,必须做适合性检验。可以用球形检验和KMO统计量检验。

1)球形检验(Bartlett)

球形检验的假设:

H0:相关系数矩阵为单位阵(即变量不相关)

H1:相关系数矩阵不是单位阵(即变量间有相关关系)

2)KMO(Kaiser-Meyer-Olkin)统计量

KMO统计量比较样本相关系数与样本偏相关系数,它用于检验样本是否适于作主成分分析。

KMO的值在0,1之间,该值越大,则样本数据越适合作主成分分析和因子分析。一般要求该值大于0.5,方可作主成分分析或者相关分析。

Kaiser在1974年给出了经验原则:

0.9以上       适合性很好

0.8~0.9        适合性良好

0.7~0.8        适合性中等

0.6~0.7        适合性一般

0.5~0.6        适合性不好

0.5以下       不能接受的

4.实验过程

4.1数据探索

加载葡萄酒数据集

使用shape属性查看数据共有多少行多少列

原数据有178行,13列

使用info()查看基本信息

从结果中可以看出数据集没有缺失值且都为浮点数类型。

4.2 PCA主成分分析

**1.**巴特利球形检验

检验总体变量的相关矩阵是否是单位阵(相关系数矩阵对角线的所有元素均为1,所有非对角线上的元素均为零);即检验各个变量是否各自独立。

从结果中看出P值远小于0.05,拒绝原假设,说明变量之间有相关关系,可以做主成分分析。

**2.**求相关矩阵

①标准化

②求相关系数矩阵

③求特征值和特征向量

**3.**对特征值进行排序并输出

**4.**绘制散点图和折线图

从图中得出主成分分析的K值应为4比较好。

**5.**求特征值的贡献度

**6.**求特征值的累计贡献度

**7.**选出主成分

**8.**选出主成分对应的特征向量矩阵

**9.**求主成分得分

**10.**绘制热力图

4.3 构建模型

在构建模型之前,先进行特征选择,选出建模需要的数据(这里先使用经过主成分分析后的数据),再拆分数据集为训练集和测试集。

构建随机森林模型

可以看出经过主成分分析后的模型准确率为0.972。

接着我们使用原始数据,也就是没有经过主成分分析处理的数据来构建模型看看效果。

从结果看出没有经过主成分分析处理的数据最后构建的模型准确率为0.944,明显看出经过主成分分析处理的模型准确率提高了不少。

5.总结

本次实验对葡萄酒数据进行了主成分分析,将13维的数据降到了4维,最后通过构建逻辑回归分类模型得出的模型准确率为0.97,相比于没有经过主成分分析处理的数据构建的模型而言,经过处理后的数据构建的模型准确率提高了3%,说明本次主成分分析是有效果的,最后构建的模型效果也很不错。

通过这次Python项目实战,我学到了许多新的知识,这是一个让我把书本上的理论知识运用于实践中的好机会。原先,学的时候感叹学的资料太难懂,此刻想来,有些其实并不难,关键在于理解。

在这次实战中还锻炼了我其他方面的潜力,提高了我的综合素质。首先,它锻炼了我做项目的潜力,提高了独立思考问题、自我动手操作的潜力,在工作的过程中,复习了以前学习过的知识,并掌握了一些应用知识的技巧等

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

[外链图片转存中…(img-5Vv6DaAb-1715463473306)]
[外链图片转存中…(img-H19jKB0t-1715463473306)]
[外链图片转存中…(img-ttzYHWIP-1715463473306)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号