我一直在尝试使用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计算和添加质心?
答案 0 :(得分:0)
来自?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)