介绍:主成分分析是一种降维技术。将数据集中的高维变量线性映射到低维空间中,把多个指标转化为少数几个综合指标,并保留数据集中的绝大部分信息(方差最大,同时保证各个主成分之间不相关)
    步骤:①对数据集标准化处理
    ②计算样本协方差阵
    ③计算协方差阵的特征值和对应特征向量
    ④根据方差的累计贡献度选取最优主成分个数
    ⑤计算主成分得分
    所用函数:
    principal(r,nfactors,rotate,scores)
    r为数据矩阵或相关系数阵
    nfactors为主成分个数(默认为1)
    rotate指定旋转的方法,默认为方差最大旋转(varimax)
    scores指定是否需要输出主成分得分,默认为False
    代码示例:

    1. df <- iris[c(1:4)]
    2. #先提取所有主成分
    3. pca1 <- principal(df,nfactors = 4,rotate = 'varimax',scores = T)
    4. #查看各个主成分的累计贡献率
    5. pca1$loadings
    6. #前三个主成分的累计贡献率达到了99.4%,因此选取3个主成分
    7. pca2 <- principal(df,nfactors=3,rotate = 'varimax',scores = T)
    8. #计算主成分得分
    9. pca2$scores