Как я могу повернуть ось в биплоте

Когда я строю PCA, а затем соответствующий биплот, оси не всегда находятся в одном и том же направлении, как на этих рисунках:

участок (штbiplot (princomp

Эти функции я использовал:

(pc <- prcomp(dat5, center=T, retx=T, scale=T)); summary(pc)
plot(pc$x[,1:2], pch=""); text(pc$x[,1:2], cex=.5, labels=(row.names(dat5)), col=as.numeric(dat$ObCl))     
biplot(princomp(dat5, cor=T), cex=.5)

Как я могу изменить направление оси одного из них, чтобы сделать их одинаковыми?

1 ответ

Решение

Признак того, что ПК произвольны, вы можете изменить его / их, умножив один или несколько ПК на -1. Обратите внимание, что это только для представления, в зависимости от того, что вы делаете, например, если вы используете $rotation Вам также может понадобиться изменить соответствующие столбцы. Пример с iris следующим образом. Надеюсь это поможет.

p <- prcomp(iris[, -5])
plot(p$x[, 1:2], asp=1, xlab="PC1", ylab="PC2")

введите описание изображения здесь

plot(cbind(p$x[, 1], p$x[, 2]*-1), asp=1, xlab="PC1", ylab="PC2")

введите описание изображения здесь

Другие вопросы по тегам