数据咖课堂:R语言十八讲(十八)—R实现主成分分析

之前我们在十七讲,将主成分分析的原理和计算过程了解了一遍,今天我们用工具R来实现这一模型.由于R软件中有多个函数可以处理这件事情,所以我们选用两个主要的来实现,一个是R自带的函数princomp和factannal,这个比较基础,但能让我们更加清楚计算的过程,另外一个是扩展包psych提供的函数,非常的方便快捷.

先看数据集:USJudgeRatings,这是美国律师对高等法院的法官评分,从各个方面,分别是,律师与法官接触次数,法官的正直程度,风度,勤勉度,案例水平,决策效率,准备工作,对法律的熟悉度,口头裁决可靠度,书面裁决可靠度,体能,是否值得保留.

按照主成分的计算过程可分为:

(1)标准化数据

(2)计算相关系数矩阵

(3)计算相关系数矩阵的特征值和特征矩阵

(4)主成分贡献率及累计贡献率,可以根据特征值的比率来计算

(5)计算主成分载荷,也就是主成分和原始变量的系数

(6)得到个主成分的值

1.

判断主成分的个数

准则有几条:

A.根据经验与理论进行选择

B.根据累积方差的门槛值,例如选择使累积方差达到80%的主成分个数。

C.根据相关系数矩阵的特征值,选择特征值大于1的主成分。

方法一:由于我们是通过特征值大小来找主成分的次序,所以KAISER-Harris准则保留特征值大于1的主成分—-碎石图

方法二:用相同大小的随机数模拟原始矩阵,若原来矩阵特征值大于模拟的相应平均特征值则主成分保留.

install.packages("psych") library(psych) fa.parallel(USJudgeRatings[,-1],fa="pc",n.iter = 100,show.legend = F) abline(h=1,col="green")

其中绿线表示特征值=1,那么大于1的只有一个主成分.

而红色虚线表示平行分析,只有一个主成分大于模拟数据的特征值.

2.

提取主成分

principal(as.matrix(USJudgeRatings[,-1]),nfactors = 1,scores = T)

其中PC1表示主成分1,下面的值表示与各个变量的相关系数.

h2表示主成分对每个变量的方差解释度.

u2表示主成分无法对变量的方差解释比例.

ss loading与主成分相关联的特征值.

proportion var表示 主成分的累积解释程度.

3.

主成分旋转

将一些列成分载荷阵变得更容易解释,通常是正交旋转,和斜交旋转.

此例 的结论就是,选取一个主成分,能对数据集的解释比例达到92%.

ppv原创文章,未经允许禁止转载

原文发布于微信公众号 - PPV课数据科学社区(ppvke123)

原文发表时间:2016-07-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏华章科技

一份数学小白也能读懂的「马尔可夫链蒙特卡洛方法」入门指南

在众多经典的贝叶斯方法中,马尔可夫链蒙特卡洛(MCMC)由于包含大量数学知识,且计算量很大,而显得格外特别。本文反其道而行之,试图通过通俗易懂且不包含数学语言的...

8520
来自专栏刘笑江的专栏

Matrix Factorization

14720
来自专栏LhWorld哥陪你聊算法

【机器学习】--隐含马尔科夫模型从初识到应用

马尔可夫(1856~1922),苏联数学家。切比雪夫的学生。在概率论、数论、函数逼近论和微分方程等方面卓有成就。     马尔可夫模型(Markov Mode...

26520
来自专栏算法channel

机器学习数据预处理:数据降维之PCA

《实例》阐述算法,通俗易懂,助您对算法的理解达到一个新高度。包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来...

33380
来自专栏企鹅号快讯

人工智能如何更好的辅助医生?Petuum研究自动生成医疗图像报告

Petuum 专栏 作者:Baoyu Jing、Pengtao Xie、Eric Xing 机器之心编译 在过去一年中,我们看到了很多某种人工智能算法在某个医疗...

20860
来自专栏大数据挖掘DT机器学习

Python做文本挖掘的情感极性分析

「情感极性分析」是对带有感情色彩的主观性文本进行分析、处理、归纳和推理的过程。按照处理文本的类别不同,可分为基于新闻评论的情感分析和基于产品评论的情感分析。其中...

1.5K50
来自专栏数据科学与人工智能

【应用】Python做文本挖掘的情感极性分析

「情感极性分析」是对带有感情色彩的主观性文本进行分析、处理、归纳和推理的过程。按照处理文本的类别不同,可分为基于新闻评论的情感分析和基于产品评论的情感分析。其中...

20430
来自专栏大数据文摘

AI说人“画” | 什么?咱俩说的是一个“模型”嘛!

16730
来自专栏懒人开发

(2.1)James Stewart Calculus 5th Edition:The Tangent and Velocity Problems

这里提到 Tangent 起源于 拉丁文, 意思是 touching 也就是曲线对应点位置当前的方向

14620
来自专栏机器学习算法工程师

贝叶斯系列——贝叶斯与其他统计流派的区别和联系

作者:沈伟臣 编辑:张 欢 前言 了解概率统计的同学都知道有频率学派和贝叶斯学派两种统计流派,那么频率学派和贝叶斯学派到底有什么区别呢?本篇文章分为三部分...

324110

扫码关注云+社区

领取腾讯云代金券