赞
踩
嗨喽! 大家好,我是“流水不争先,争得滔滔不绝”的翀,18双非本科生一枚,正在努力!欢迎大家来交流学习,一起学习数据分析,希望我们一起好好学习,天天向上,目前是小社畜一枚~~
案例1主题: 主成分分析及学生成绩神秘联系分析
案例2主题: 因子分析及学生成绩神秘联系分析
案例一:目的与内容
学生的考试是评估学生的学习程度及能力,当我们只想知道学生的学习程度如何时,可借由一份良好的试卷来测验出学生的学习程度分布状况。可是怎样才是一份良好的试卷呢?当然是学习程度好的学生所考的成绩较高,而学习程度差的学生成绩较低,亦即试卷能真正反映出学生学习程度差异的真实分布情况。想作一个总体性学习状况比较时,便可以用主成分分析来找出主成分,本文中的学生神秘成绩联系主成分分析是由六科成绩线性组合而成的新变量,可以帮助我们看出学生的六科科学习成绩状况的综合指标,老师可以根据这来发现学生成绩的变化,及时有效发现学习的问题,帮助学生提高成绩,促进教学相长。老师是人类的灵魂工程师。少年强则国强,所以这内容是极具意义的。
案例二:目的与内容
因子分析是主成分分析的推广,也是一种把多个变量化为少数几个综合变量的多变量分析方法,其目的是用有限个不可观测的变量来解释原始变量之间的相关性关系。
因子分析的主要用途在于:1 减少分析变量个数;2 通过对变量间相关关系的探测,将原始变量进行分类。即将相关性高的变量分为一组,用共性因子代替该组变量。在本文中,将用因子分析来帮助学生成绩这几门科目的相关性是否真的有可能由文科和理科来刻画。
三、主成分分析上机步骤与上机结果
数据准备
数据包含52名学生6个学科的成绩
案例一主成分分析
样本主成分分析实现过程
(1)将原始数据标准化,以消除变量间在数量级和量纲的不同。
(2)求标准化数据的相关矩阵。(ps:存放数据test_score文件的路径各有不同,所以要先用setwd(“文件路径”)设置好路径)
(3)求相关矩阵的特征值和特征向量
(4)计算方差贡献率和累积方差贡献率
Standard deviation:方差 comp.1到comp.6对应的方差就是它们的信息量 即是我们 所说的特征值,对应的标准差就是方差开平方
Proportion of Variance: 方差的占比
Cumulative Proportion 累积方差贡献率
(5)确定主成分
如上图,用两个主成分,累积的方差贡献率就变成了82.87左右,我们认为已经是一个比较高的数值
所以我们这就采用前两个主成分就可以了
综合指标只要选取前两个
(6)用原指标的线性组合来计算各成分得分
(Ps:数据中的六科Y1、Y2、Y3、Y4、Y5、Y6分别是数学、物理、化学、语文、历史、英语) z1可以理解为文科的平均情况减去理科的平均情况,数值越大说明文科的成绩越好,数值越小,反之理科越好,z1刻画的是一个偏科的情况
z2是一种相对均衡的情况,类似我们通用所使用的平均分,称为均衡表现
四、讨论分析
进一步探索一些典型学生的样本主成分取值/得分
下面行依次是6、7、45、30、49、26、33、8号同学成绩的情况
红色框:可以看到是一个挺大的数据,上面可以说是文科减理科的情况,越大说明是文科越好,越小说明理科越好,所以6,7,45号学生应该是;理科成绩比文科好,看一下原始数据,确实是这样
蓝色框:同样如此,应该是文科比理科好很多,原始数据如下
绿色框:从第二个主成分指标看,是一个负数,因为第二个主成分前面都是负号,所以它越小越负,说明本身成绩应该是挺高的,均衡成绩应该是挺高的,看一下原始数据
黄色框:可以看到是一个很大的整数,那么他的总成绩本身真的不高
碎石图
另外一种方法选取多少个主成分比较合适
主成分总结
数据降维
通常我们会用少于原始变量数的主成分来描述尽可能多的数据差异,特别是当原始变量维度很高时,可以达到将维目的。
构建综合指标
主成分分析主要用于构建综合指标来区分目标群体,例如构建顾客各种消费行为的综合指标进行客户分级
四、因子分析上机步骤与上机结果
查看相关系数矩阵
猜想:大体上前面三个好像更相关一点,后三个更相关一点。所以暂时将因子模型定位下面这个样子
用极大似然法来估计载荷矩阵:
factanal是Factor analysis的意思,factors保留两个公共因子,如下图可以看到累积的方差贡献率是0.745
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200526093910459.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2pjamlj,size_16,color_FFFFFF,t_70
通过自定义程序包尝试主成分法:
可以看到累积方差达到了82.87,是比用极大似然法估计来得好的,也许极大似然法是基于分布的,分布并不是那么得正态,所以后续倾向于主成分法来讨论分析。主成分法如果没有经过旋转,它的载荷矩阵是这个样子(如下图)。
可以看出解释并不是那么明显,不知道每个因子到底是什么意思,所以使用旋转因子的方法
计算旋转因子载荷:
可以看到经过旋转,累积方差贡献率没什么变化,但是两个因子它的载荷变了很多,可以看到第一个公共因子它基本主要决定Y4,Y5,Y6,第二个公共因子主要在决定前三个,剩下的值都很少,我们可以忽略掉,这个就告诉我们一种比较简便的方法
解释第一个和第二个因子,第一个找后三个变量的共同点,分别是语文,英语,历史的,是文科,第二个分别是数理化,理科。
旋转过后的因子空间里面,两个坐标轴都经过很多的点,都是靠近坐标轴。
因子旋转的作用
经过旋转以后,因子的意义更加清晰
所以我们基本上是可以通过我们的相关性和因子分析,把我们的变量分成两类,一类是语文,历史,英语,是文科(一定程度上),一类是数学,物理和化学,是理科。通过这个案例可以得出这样将科目分为文科,理科是合理的,通过它的相关性,通过学生在这些科目当中的表现。
计算样本因子得分
可以看出有些同学文科好,有些理科好,有的都挺好,有的都挺差
画图展示
第一个横轴就是文科,对应的是第一个公共因子,第二轴是y轴,是理科因子
如上图,我们可以分析出一些学霸,学渣的结论,偏科情况
五、主成分分析与因子分析综合对比讨论分析
专栏学习
01 【数据分析实战项目】: 无人智能售货机商务分析、 线上课程智能推荐、 学术前沿趋势分析
02 【算法--数据挖掘】: 机器学习----吃瓜教程!、 集成学习、 深度学习 学术前沿趋势分析
03 【天池数据挖掘竞赛】: 心电信号多分类分类、 新闻推荐入门赛系统项目
04 【Python数据分析】: Numpy 数值计算基础、 Matplotlib 数据可视化基础、 Pandas 统计分析基础、 Pandas 进行数据预处理、 scikit-learn 构建模型
往期精彩内容
01 【常见的数据分析师的面试问题】: 基础知识考查、概率论与数理统计、数据挖掘、常见模型介绍、数据分析师工作必备技能等等
02 【基于条件随机场模型的中文分词】: 中文分析、python代码实现
03 【 Github开源项目】: Github开源项目 数分/数挖学习路线
欢迎关注我,一起交流学习探索数据分析的世界,洞察数据!努力接受社会毒打~~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。