r - R principal() 获取因子的特征值
问题描述
我已经完成了 PCA,结果看起来像这样:
RC1 RC14 RC2 RC5 RC3 RC9 RC6 RC7 RC16 RC11 RC19 RC12 RC26 RC8 RC10 RC4 RC20 …
SS loadings 3.199 3.161 3.001 2.958 2.928 2.908 2.793 2.786 2.727 2.723 2.696 2.558 2.544 2.540 2.515 2.499 2.494 …
Proportion Var 0.005 0.005 0.005 0.004 0.004 0.004 0.004 0.004 0.004 0.004 0.004 0.004 0.004 0.004 0.004 0.004 0.004 …
Cumulative Var 0.005 0.010 0.014 0.019 0.023 0.027 0.032 0.036 0.040 0.044 0.048 0.052 0.056 0.060 0.063 0.067 0.071 …
如您所见,因素(RC1、RC14 等)的顺序不正确。
为了得到我可以使用的特征值fit$values
,我会得到一个这样的列表
[1] 4.9880983 4.3804479 3.4831868 3.4637441 3.1826873 2.9171613 2.7109790 2.7069910 2.6505181 2.5475078 2.5339040
[12] 2.5167436 2.4434298 2.4023438 2.3648536 2.3065183 2.2927025 2.2779793 2.2523245 2.2436222 2.2073776 2.1823970
[23] 2.1626319 2.1487751 2.1274126 2.0963421 2.0918373 2.0728735 2.0603362 2.0470462 2.0355974 2.0202679 2.0170792
[34] 2.0013015 1.9891380 1.9874788 …
现在我想要这些因素的特征值。问题是——因为因子没有排序——我怎样才能匹配因子和它们各自的特征值?我猜 RC1 的特征值为 4.9880983,但 RC14 的特征值为 4.3804479 还是 2.4023438?
解决方案
你可以安装 FactoExtra 库,它有很多很棒的工具。它在 PC 轴 ID 旁边列出了特征值,因此不会有任何混淆。
库(FactoExtra)
eig.val <- get_eigenvalue(fit)
eig.val[1:8,] #吐出前 8 个轴。
推荐阅读
- scala - Kafka consumer not returning any events
- python-3.x - 使用 pythonanywhere 在 Web 上部署 Python Flask 应用程序
- ios - UItableViewCell 更新错误的单元格标签文本
- c# - 连接到 MS Access
- javascript - 无法让 javascript 在 jsfiddle 中以 HTML 形式工作
- javascript - 如何使用 moment.js 和 ES6 创建小时 + 分钟数组?
- python - 运行 python opencv 脚本时出现“选择超时”错误
- java - Object.toString() OutOfMemory - 如果它包含 Base64,如何拆分?
- html - 带有 typescript 和 html 的动态表
- couchbase - 计数查询在 Couchbase 中运行速度太慢