2012-10-07 20 views
6

Hallo allerseits Ich habe eine einfache Frage, für die ich in keinem Tutorial eine Antwort bekommen konnte. Ich habe eine einfache Hauptkomponentenanalyse für eine Reihe von Daten durchgeführt und dann meine Daten mit Biplot geplottet.Hauptkomponentenanalyse in R Datenfarbe

CP <- prcomp(dat, scale. = T) 
summary(CP) 

biplot(CP) 

Damit bekomme ich ein Streudiagramm meiner Daten in Bezug auf die erste und zweite Komponente. Ich möchte meine Daten nach Farbe trennen und R angeben, um meine ersten 20 Daten in Rot und die nächsten 20 Daten in Blau zu malen. Ich weiß nicht, wie ich R sagen soll, diese beiden Datensätze zu färben. Jede Hilfe wird sehr geschätzt. Danke! (im sehr neu R)

Antwort

1

plot() Mit Ihnen mehr Flexibilität - Sie können es allein verwenden oder mit text() für Textbeschriftungen als belows (Danke @flodel für nützliche Kommentare):

col = rep(c("red","blue"),each=20) 
plot(CP$x[,1], CP$x[,2], pch="", main = "Your Plot Title", xlab = "PC 1", ylab = "PC 2") 
text(CP$x[,1], CP$x[,2], labels=rownames(CP$x), col = col) 

jedoch wenn Sie wollen biplot() versuchen, diesen Code verwenden:

biplot(CP$x[1:20,], CP$x[21:40,], col=c("red","blue")) 
11

Haftungsausschluss: Dies ist keine direkte Antwort, sondern kann zwicken den Wunsch zu erhalten d Ausgabe.

library(ggbiplot) 
data(wine) 
wine.pca <- prcomp(wine, scale. = TRUE) 
print(ggbiplot(wine.pca, obs.scale = 1, var.scale = 1, groups = wine.class, ellipse = TRUE, circle = TRUE)) 

enter image description here