2

我一直在尝试使用 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 中是否有一个简单的参数可以让我这样做,如果没有,我可以使用的最简单的功能是什么?

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

4

1 回答 1

2

?autoplot.prcomp
autoplot(object, data = NULL, scale = 1, x = 1, y = 2, ...)
哪里:
x = principal component number used in x axis
y = principal component number used in y axis

因此,如果您需要绘制 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)

在此处输入图像描述

于 2017-07-11T20:51:29.167 回答