根据载荷矩阵系数判断应该选取几个主成分,构造主成分的表达式(综合指标),并做分析test_test <- read.table("D:/R/R Code/5/Chap7/test_score.csv", sep=",", header=T)R <- round(cor(test), 3) <- princomp(test, cor=T)summary(test_PCA, loadings=T)# 找出第一个主成分(PC1)上得分较高的学生test[c(6,7,45,30,49),]# 找出第二个主成分(PC2)上得分较高的学生test[c(26,33,8),]# 获取这些学生在主成分上的得分samplePC <- (round(test_PCA$scores,3))[c(6,7,45,30,49,26,33,8),]rownames(samplePC) <- c(6,7,45,30,49,26,33,8)samplePC# 也可以使用另一种方式获取这些学生在主成分上的得分samplePC2 <- round(predict(test_PCA),3)[c(6,7,45,30,49,26,33,8),]rownames(samplePC2) <- c(6,7,45,30,49,26,33,8)samplePC2
时间: 2023-09-18 18:09:24 浏览: 114
根据载荷矩阵系数,可以使用以下几种方法来确定应该选取几个主成分:
1. 可以查看主成分的累积方差贡献度,通常选择累积方差贡献度大于80%的主成分。在本例中,可以使用summary函数查看主成分的累积方差贡献度:
```R
summary(test_PCA)
```
输出结果中,Cumulative Proportion列即为累积方差贡献度。可以看到,前两个主成分的累积方差贡献度为0.6334+0.2061=0.8395,大于80%,因此选择前两个主成分。
2. 也可以查看主成分的特征值,通常选择特征值大于1的主成分。可以使用eigen函数查看主成分的特征值:
```R
eigen(cor(test))$values
```
输出结果中,每个特征值对应一个主成分,可以根据特征值的大小来确定应该选取几个主成分。在本例中,前两个特征值分别为2.1448和0.6968,大于1,因此选择前两个主成分。
选取了主成分之后,可以使用主成分载荷矩阵来构造主成分的表达式(综合指标)。在本例中,前两个主成分的载荷矩阵为test_PCA$loadings[,1:2],可以将每个变量的得分乘以对应的载荷矩阵系数,再求和得到主成分的得分。例如,假设第一个主成分的表达式为PC1=0.411x1+0.404x2+0.424x3+0.408x4+0.394x5+0.341x6,其中x1到x6分别代表六门科目的得分,则一个学生在第一个主成分上的得分为PC1=0.411x1+0.404x2+0.424x3+0.408x4+0.394x5+0.341x6。
接下来,可以对主成分进行分析,例如探索主成分与其他变量之间的关系,或者使用主成分来进行分类、聚类等分析。
阅读全文