主成分分析(R语言)
代码实现如下:
data3.3<-read.csv("C:/Users/Administrator/Desktop/data3.3.csv",head=TRUE)
datas<-data.frame(scale(data3.3[,1:6]))
pr3.3<-princomp(~x1+x2+x3+x4+x5,datas,cor=T)
# 对5个变量做主成分分析,其中cor=T表明是用相关系数矩阵进行主成分分析
summary(pr3.3,loadings=TRUE) # 输出主成分分析的结果
pr3.3$scores[,1:2] # 输出前两个主成分的得分
输出结果为:
summary()的输出结果中Inportance of components部分第一行是5个主成分的标准差,即主成分所对应的特征跟的算术平方根λk\sqrt\lambda_{k}λk;第二行是各主成分方差所占的比例,反映了主成分所能解释数据变异的比例,也就是包含原数据信息的比例;第三行是累积比例。
第一个主成分Comp.1的方差百分比为79.826%,含有原始5个变量近80%的信息量;前面两个主成分累积百分比为98.468%,几乎包含了5个变量的全部信息,因此取前两个主成分已经足够。
另外,Loadings部分输出的矩阵为各主成分表达式中Xi∗X_{i}^{*}Xi∗的系数,其中空白部分为默认的为输出的<0.1的值。
现在,我们仅保留前两个主成分对其进行最小二乘回归。
代码实现如下:
pre3.3<-pr3.3$scores[,1:2] # 将前两个主成分的得分保存在变量pre3.3中
datas$z1<-pre3.3[,1] # 将第一主成分的得分添加在数据框datas中,变量名为z1
datas$z2<-pre3.3[,2] # 将第二主成分的得分添加在数据框datas中,变量名为z2
pcr3.3<-lm(y~z1+z2-1,datas)
summary(pcr3.3)
输出结果为:
由输出结果可以知道,主成分的回归方程为:
y^∗=0.473z1+0.194z2\hat{y}^{*}=0.473z_{1}+0.194z_{2}y^∗=0.473z1+0.194z2
由于主成分是标准化后自变量的线性组合,如果想要得到y∗y^{*}y∗关于自变量x1∗,x2∗,x3∗,x4∗,x5∗x_{1}^{*},x_{2}^{*},x_{3}^{*},x_{4}^{*},x_{5}^{*}x1∗,x2∗,x3∗,x4∗,x5∗的回归方程,只需要分别将下面两个式子
z1=0.493x1∗+0.495x2∗+0.207x3∗+0.482x4∗+0.486x5∗z_{1}=0.493x_{1}^{*}+0.495x_{2}^{*}+0.207x_{3}^{*}+0.482x_{4}^{*}+0.486x_{5}^{*}z1=0.493x1∗+0.495x2∗+0.207x3∗+0.482x4∗+0.486x5∗
z1=0.171x1∗+0.137x2∗−0.941x3∗+0.221x4∗−0.133x5∗z_{1}=0.171x_{1}^{*}+0.137x_{2}^{*}-0.941x_{3}^{*}+0.221x_{4}^{*}-0.133x_{5}^{*}z1=0.171x1∗+0.137x2∗−0.941x3∗+0.221x4∗−0.133x5∗
代入上式即可。
主成分分析(R语言)相关推荐
- PCA主成分分析 R语言
1. PCA优缺点 利用PCA达到降维目的,避免高维灾难. PCA把所有样本当作一个整体处理,忽略了类别属性,所以其丢掉的某些属性可能正好包含了重要的分类信息 2. PCA原理 条件1:给定一个m*n ...
- R语言学习_数据降维
纬度灾难 变量过多(没用的变量) 变量相关(相关的变量) 解决办法 剔除无用变量 逐步回归 向前引入法 向后剔除法 逐步筛选法 Step函数 AIC越小越好 AIC = n ln(SSE) + 2p ...
- R语言主成分分析PCA和因子分析EFA、主成分(因子)个数、主成分(因子)得分、主成分(因子)旋转(正交旋转、斜交旋转)、主成分(因子)解释
R语言主成分分析PCA和因子分析EFA.主成分(因子)个数.主成分(因子)得分.主成分(因子)旋转(正交旋转.斜交旋转).主成分(因子)解释 目录
- R语言进行主成分分析(PCA)、使用prcomp函数进行主成分分析:碎石图可视化(scree plot)、R通过线图(line plot)来可视化主成分分析的碎石图(scree plot)
R语言进行主成分分析(PCA).使用prcomp函数进行主成分分析:碎石图可视化(scree plot).R通过线图(line plot)来可视化主成分分析的碎石图(scree plot) 目录
- R语言进行主成分分析(PCA):使用prcomp函数来做主成分分析、使用summary函数查看主成分分析的结果、计算每个主成分解释方差的、每个主成分解释的方差的比例、以及多个主成分累积解释的方差比例
R语言进行主成分分析(PCA):使用prcomp函数来做主成分分析.使用summary函数查看主成分分析的结果.计算每个主成分解释方差的.每个主成分解释的方差的比例.以及多个主成分累积解释的方差比例 ...
- R语言进行主成分分析(PCA)、使用prcomp函数进行主成分分析:碎石图可视化(scree plot)、R通过条形图(bar plot)来可视化主成分分析的碎石图(scree plot)
R语言进行主成分分析(PCA).使用prcomp函数进行主成分分析:碎石图可视化(scree plot).R通过条形图(bar plot)来可视化主成分分析的碎石图(scree plot) 目录
- R语言层次聚类(hierarchical clustering):特征缩放、抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员)、基于主成分分析的进行聚类结果可视化
R语言层次聚类(hierarchical clustering):特征缩放.抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员).基于主成分分析的进行聚类结果可视化 ...
- R语言PCA主成分分析(Principle Component Analysis)实战2
R语言PCA主成分分析(Principle Component Analysis)实战2 目录 R语言PCA主成分分析(Principle Component Analysis)实战2 #案例分析
- R语言PCA主成分分析(Principle Component Analysis)与线性回归结合实战
R语言PCA主成分分析(Principle Component Analysis)与线性回归结合实战 目录 R语言PCA主成分分析(Principle Component Analysis)与线性回归 ...
- R语言PCA主成分分析(Principle Component Analysis)实战1
R语言PCA主成分分析(Principle Component Analysis)实战1 目录 R语言PCA主成分分析(Principle Component Analysis)实战1 #案例分析
最新文章
- 即学即用的 30 段 Python 非常实用的代码
- job kettle 导出_kettle从hive2导出数据正常,但是用kettle manager启动就报错
- 一本彻底搞懂MySQL索引优化EXPLAIN百科全书
- AdBlock屏蔽网易的“我来挑错”和“转发至微博”
- Github Pages + Jekyll 独立博客一小时快速搭建上线指南
- UNIX(多线程):22---几种常见的线程池
- php mysql 地图 矩形_PHP+Mysql+jQuery中国地图区域数据统计实例讲解
- SQL varchar数据类型深入探讨
- if shell 条件语句简写_shell中的if语句
- Nooploop空循环 TOFSense激光测距传感器 模块 红外测距测高
- Unable to start activity ComponentInfo,请教如何解决?
- zip压缩包解压中文乱码问题
- 光删除微信聊天记录是没用的!通过这招,才能完全清空!
- 应用程序发生异常unknown software exception的解决方法
- “玲珑杯”郑州轻工业学院第九届ACM程序设计大赛圆满结束
- qpc之qk调度学习笔记
- 计算机柜里 do dl代表什么,dl是什么意思(你知道AI、ML和DL分别代表什么吗?)...
- pycharm 无法安装第三方库解决方案
- 计算机基础教程张福炎pdf,《大学计算机信息技术教程》南京大学出版社(第4版第3次修订)张福炎 孙志挥编第3章 习题课...
- rowspan和colspan使用
热门文章
- 触摸板触摸屏禁止手指缩放,这么处理才行
- 几个简单的c语言程序,几个简单的C语言源程序.docx
- Android事件总线 ( AndroidEventBus ) 框架学习
- dnf剑魂buff等级上限_DNF剑魂职业定位、装备、加点、猴戏、新老换装详解
- 计算机二级两个控件之间求偶,求,全国计算机等级考试二级java历年试题及答案合集,还有上机考试真题?...
- spark on yarn实战 +HA
- 2018 NOIP 提高组 复赛 day1
- 5G NR RLC层
- Android代码心得6-Intent的使用
- 简单使用命令行创建数据库