Escala de PCA com ggbiplot
Estou tentando plotar uma análise de componentes principais usandoprcomp
eggbiplot
. Estou obtendo valores de dados fora do círculo de unidades e não consegui reescalonar os dados antes de ligarprcomp
de tal forma que eu possa restringir os dados ao círculo unitário.
data(wine)
require(ggbiplot)
wine.pca=prcomp(wine[,1:3],scale.=TRUE)
ggbiplot(wine.pca,obs.scale = 1,
var.scale=1,groups=wine.class,ellipse=TRUE,circle=TRUE)
Eu tentei escalar subtraindo a média e dividindo por desvio padrão antes de chamarprcomp
:
wine2=wine[,1:3]
mean=apply(wine2,2,mean)
sd=apply(wine2,2,mean)
for(i in 1:ncol(wine2)){
wine2[,i]=(wine2[,i]-mean[i])/sd[i]
}
wine2.pca=prcomp(wine2,scale.=TRUE)
ggbiplot(wine2.pca,obs.scale=1,
var.scale=1,groups=wine.class,ellipse=TRUE,circle=TRUE)
ggbiplot
pacote instalado da seguinte forma:
require(devtools)
install_github('ggbiplot','vqv')
Saída de qualquer parte do código:
Pelo comentário de @Brian Hanson abaixo, estou adicionando uma imagem adicional refletindo a saída que estou tentando obter.