主成分分析(PCA)模型的建立---R语言实现(2)附代码

主成分分析(PCA)是一种常用的降维方法,通过正交变换将多个变量转化为少数几个主成分,这些主成分保持原始数据的最大方差。PCA在处理高维数据时,通过选取贡献率高的前几个主成分,能有效减少数据的复杂性。在实践中,PCA常用于自变量间存在相关性的多元统计分析,例如在建立回归模型前进行数据预处理。通过主成分回归,可以得到决定系数较高的模型,显示了PCA在数据简化和信息保留方面的效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

主成分分析是对最小二乘估计的一种改进,其参数估计是一种有偏估计。以下将介绍主成分分析的基本思想和性质,然后用实力介绍主成分回归的应用

1.1主成分分析的基本思想

主成分分析(PCA)是用一种降维思想,在损失极少信息的前提下将多个指标利用正交旋转转换为几个综合指标。

如果第一主成分不足以代表原来 p 个变量的信息,再考虑选取 F2 即第 二个线性组合。F2 称为第二主成分 。第二个主成分不应该再包含第一个主成分的信息,统计上的描述就是 让这两个主成分的协方差为 0 为了有效地反映原来信息,F1 已有的信息就不再出现在 F2 中,即 cov (F1,F2) = 0。依此类推,可以获得 p 个主成分。因此,这些主成分之间是 互不相关的,而且方差依次递减。在实际中,挑选前几个最大主成分来表征。

一般而言,当主成分的信息贡献率到达80%以上我们就认为其主成分有效

1.2主成分分析的性质

二、主成分分析步骤

第一步: 对原来的 p 个指标进行标准化,以消除变量在水平和量纲上的影响 第二步: 根据标准化后的数据矩阵求出相关系数矩阵 第三步: 求出协方差矩阵的特征根和特征向量 第四步: 确定主成分,并对各主成分所包含的信息给予适当的解释,计算综合 得分 第五步:KMO 和 Barttett 检验 检验各因素之间有没有关联度。一般情况下,KMO 值应大于等于 0.6, sig 值应小于等于 0.05

三、主成分分析运用及实例

一般而言,主成分分析运用在多个自变量且自变量之间存在较大相关关系

代码:

library(readxl)
data_1 <- read_excel("D:/桌面/应用回归分析/data.xls",sheet = 1)#读取表格中第一组数据集
#主成分分析
#数据降维(避免不同量纲影响,压缩空间,代码运行速度更快)
data_1[[1]] = as.numeric(as.character(data_1$Y))#修改字符类型
datas <- data.frame(scale(data_1))#标准化数据
pr1.1 <- princomp(~X1+X2+X3+X4,data <- datas,cor <- T)#对变量相关矩阵进行主成分分析
summary(pr1.1,loadings = TRUE)#输出主成分结果
datas$z1 <- pr1.1$scores[,1]
datas$z2 <-pr1.1$scores[,2]#输出前两个主成分结果
#建立回归模型
pcr1.1 <- lm(Y~z1+z2,datas)
summary(pcr1.1)

结果展示:

由主成分结果可知,第一个主成分与第二个主成分贡献值达到99.8%,几乎包含4个变量的全部信息,因此取两个主成分已经足够,因此对两个主成分建立回归模型,由模型结果可得,决定系数为0.998,因此回归方程高度显著。所以该模型合理。

参考文献
应用回归分析(R语言版)电子工业出版社
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值