PCA-Biplot : Ein Weg zu verbergen Vektoren, um zu sehen, alle Daten, die Punkte deutlich
Ich versuche zu tun, PCA mit R.
Meine Daten hat 10.000 Spalten und 90 Zeilen
Ich benutzte die Funktion prcomp zu tun PCA.
Vorbereiten wollte ein biplot mit den prcomp Ergebnisse, lief ich in das problem, dass die 10.000 gezeichnet Vektoren auf mein Datenpunkte. Gibt es eine Möglichkeit für den biplot zu verbergen, die Vektoren-Darstellung?
ODER
Kann ich verwenden plot
um die PCA-Ergebnisse. Aber ich bin nicht sicher, wie Sie Sie zu beschriften Sie diese Punkte nach meinen Datenpunkte, die sind nummeriert von 1 bis 90.
Sample<-read.table(file.choose(),header=F,sep="\t")
Sample.scaled<-data.frame(apply(Sample_2XY,2,scale))
Sample_scaled.2<-data.frame(t(na.omit(t(Sample_2XY.scaled))))
pca.Sample<-prcomp(Sample_2XY.scaled.2,retx=TRUE)
pdf("Sample_plot.pdf")
plot(pca.Sample$x)
dev.off()
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie eine
help(prcomp)
oder?prcomp
die Hilfe-Datei sagt uns, dass alle die Dinge, die in derprcomp()
Objekt von der Funktion zurückgegeben wird. Wir brauchen nur zu Holen die Dinge, die wir zeichnen möchten, und das mit der paar-Funktion, gibt uns mehr Kontrolle alsbiplot()
.Einer Allgemeinen trick für die Fälle, wenn die Hilfe-Datei nicht klären, die Dinge zu tun, die eine
str()
auf die prcomp Objekt (in deinem Fall pca.Probe), um zu sehen, alle seine Teile und finden, was wir wollen (str()
kompakt zeigt die interne Struktur eines R-Objekts. )Hier ist ein Beispiel mit einigen R ' s Beispieldaten:
str(p)
gibt mir etwas zu hässlich und zu lang, um zu zählen, aber ich kann sehen, dass p$x hat den Staaten als rownames und deren Standorte auf die wichtigsten Komponenten Spalten. Bewaffnet mit diesem können wir plot es irgendeine Weise, die wir wollen, wie mitplot()
undtext()
(für Etiketten):Wenn wir ein Streudiagramm mit den vielen Beobachtungen, die Etiketten dürfen nicht lesbar sein. Wir haben daher vielleicht wollen nur label mehr extreme Werte, denen wir uns identifizieren können
quantile()
:str(pca.Sample)List of 5 $ sdev : num [1:90] 87.21 38.37 12.26 8.79 6.2 ... $ rotation: num [1:9912, 1:90] 0.01135 -0.0108 -0.00551 -0.00868 -0.0099 ... ..- attr(*, "dimnames")=List of 2 .. ..$ : chr [1:9912] "V1" "V2" "V3" "V4" ... .. ..$ : chr [1:90] "PC1" "PC2" "PC3" "PC4" ... $ center : Named num [1:9912] 4.56e-17 4.16e-18 -9.49e-17 -6.03e-17 5.09e-17 ...
$ scale : logi FALSE $ x : num [1:90, 1:90] -78.8 88.2 -61.6 87.3 -62.1 ... ..- attr(*, "dimnames")=List of 2 .. ..$ : NULL .. ..$ : chr [1:90] "PC1" "PC2" "PC3" "PC4" ... - attr(*, "class")= chr "prcomp"