Skalowanie PCA za pomocą ggbiplot
Próbuję wykreślić analizę głównego komponentu za pomocąprcomp
iggbiplot
. Otrzymuję wartości danych poza okręgiem jednostki i nie byłem w stanie przeskalować danych przed wywołaniemprcomp
w taki sposób, że mogę ograniczyć dane do okręgu jednostki.
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)
Próbowałem skalować, odejmując średnią i dzieląc przez odchylenie standardowe przed wywołaniemprcomp
:
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
pakiet zainstalowany w następujący sposób:
require(devtools)
install_github('ggbiplot','vqv')
Wynik dowolnego fragmentu kodu:
Na komentarz @Brian Hanson poniżej dodam dodatkowy obraz odzwierciedlający dane wyjściowe, które próbuję uzyskać.