1 ?, j8 }6 z! i. D# g8 Q12.提取特征值和计算贡献率: - n4 Z% D' I5 ]' e; w/ E3 M) Z0 R
' O, u _1 K) O/ J& W
13.创建一个零矩阵DS,其大小为b x 3,其中b为特征值矩阵D的列数。 ( a# N' O( V S/ N7 _7 n9 o6 I. D14.将特征值矩阵D的对角线元素(特征值)赋值给DS的第一列。/ P1 O& w1 S3 I" q3 D3 p
15.对DS按照第一列的值进行从大到小排序。 5 I' R7 X: l; s1 V3 H16.计算特征值的贡献率,将特征值除以所有特征值的和,并将结果赋值给DS的第二列。 2 r: [1 ?/ V7 n( t* D: M" P17.计算特征值的累计贡献率,对贡献率列进行累加,并将结果赋值给DS的第三列。0 F+ s" a% \2 u
) z% v, f/ d/ B
; V/ H6 o" {" T/ }18.确定保留主成分的数量: 5 p# X% w* D# M/ \$ g: j" x ( F$ u; }* k! x2 U& A) m2 W2 u! f( w3 i; r
19.找到累计贡献率大于等于设定的保留率T的索引位置。 ( B# r, \! Z3 y2 W# x# G# C20.提取第一个满足条件的索引(最小的保留主成分数量)并赋值给变量Com_num。 6 W' R9 G$ w; n; K' [ 8 X$ W1 l& y d- ]6 S2 [ 5 P+ `/ Y r9 Z/ _& {21.提取主成分对应的特征向量: : ~" B) i2 p- J3 f' [$ P4 \" N3 P+ N2 P% U' o- U# j7 A( u& v
% ^3 Z1 n/ ^5 a7 _6 S f& b22.将特征向量矩阵V的最后Com_num列反转(从最后一列开始取),得到主成分对应的特征向量矩阵PV。 5 V5 A% {$ s3 A _4 t: r5 c d 9 Z( ]9 o7 R% w23.计算在主成分上的数据得分: . J) a! d9 b7 Z3 ]7 m* w4 q2 i, W' l' S# W5 L0 P4 c
# u* N7 |5 y D1 d' K* e24.将归一化后的数据矩阵SA与主成分特征向量矩阵PV相乘,得到在主成分上的数据得分矩阵data。! z* w$ ?, A$ U6 O% W
" j* i0 X7 P4 o# u
该函数的作用是对原始数据进行主成分分析,并返回在主成分上的数据得分矩阵。主成分分析用于降维和数据探索,它将原始数据转换为一组新的线性维度,其中每个维度都是原始数据维度的线性组合。这些新的维度(主成分)根据特征值的贡献率进行排序,保留贡献率较高的主成分。( N. y3 L1 B( B
v. {( h, L0 b! q7 J, Y5 [2 U 9 Z, }, i1 A* R9 |, e. {5 _ t! X$ o, O- p' U1 L6 Z1 _
) E; b7 ^6 Y' [! B