r - 使用 R 中的自动绘图 (ggfortify) 绘制主成分 3,4

标签 r ggplot2 pca ggfortify

我一直在尝试使用 autoplot (在 ggfortify R 包中)在 PCA 坐标中绘制数据点。对于数据矩阵 D2,

autoplot(prcomp(D2),colour=color_codes)

只要在主成分 1+2 的空间中生成点散点图,效果就很好。然而,PCA 分量 1+2 只能解释大约 30% 的协方差,我想对 PCA 1+3、2+3 和 3+4 等做同样的事情。autoplot 中是否有一个简单的参数可以解释让我这样做,如果没有,我可以使用的最简单的函数是什么?

此外,是否有某种方法可以使用自动绘图来计算和添加质心?

最佳答案

来自 ?autoplot.prcomp:
自动绘图(对象,数据 = NULL,比例 = 1,x = 1,y = 2,...)
其中:
x = x 轴使用的主成分编号
y = y 轴使用的主成分编号

因此,如果您需要绘制 PC2 与 PC3 的图并添加质心:

library(ggfortify)
set.seed(1)
D2 <- matrix(rnorm(1000),ncol=10)

prcmp <- prcomp(D2)
pc.x <- 2
pc.y <- 3
cnt.x <- mean(prcmp$x[,pc.x])
cnt.y <- mean(prcmp$x[,pc.y])
autoplot(prcmp, x=2, y=3) +
  geom_point(x=cnt.x, y=cnt.y, colour="red", size=5)

enter image description here

关于r - 使用 R 中的自动绘图 (ggfortify) 绘制主成分 3,4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45043909/

相关文章:

r - 如何在循环运行时将for循环内的变量实时打印到控制台?

r - 使用 ggplot2 在左侧和右侧创建一个带有两个 x 轴的中央 y 轴图

r - 图例中的 ggplot2 虚线未正确显示

matlab - 如何使用缩减后的数据——主成分分析的输出

python - sklearn 上的 PCA - 如何解释 pca.components_

r - 填充数据框中的特定列

r - 如何创建 namespace 并将函数导出到其中?

r - 动态 Rstudio 代码片段

使用 qplot 和 stat_smooth 检索线性模型方程

matlab - 如何在Matlab中使用PCA查看哪个属性(特征)对分类性能贡献最大?