Ich führte eine Hauptkomponentenanalyse (PCA) mit R mit zwei verschiedenen Funktionen ( prcomp
und princomp
) durch und stellte fest, dass sich die PCA-Werte im Vorzeichen unterschieden. Wie kann es sein?
Bedenken Sie:
set.seed(999)
prcomp(data.frame(1:10,rnorm(10)))$x
PC1 PC2
[1,] -4.508620 -0.2567655
[2,] -3.373772 -1.1369417
[3,] -2.679669 1.0903445
[4,] -1.615837 0.7108631
[5,] -0.548879 0.3093389
[6,] 0.481756 0.1639112
[7,] 1.656178 -0.9952875
[8,] 2.560345 -0.2490548
[9,] 3.508442 0.1874520
[10,] 4.520055 0.1761397
set.seed(999)
princomp(data.frame(1:10,rnorm(10)))$scores
Comp.1 Comp.2
[1,] 4.508620 0.2567655
[2,] 3.373772 1.1369417
[3,] 2.679669 -1.0903445
[4,] 1.615837 -0.7108631
[5,] 0.548879 -0.3093389
[6,] -0.481756 -0.1639112
[7,] -1.656178 0.9952875
[8,] -2.560345 0.2490548
[9,] -3.508442 -0.1874520
[10,] -4.520055 -0.1761397
Warum unterscheiden sich die Vorzeichen ( +/-
) für die beiden Analysen? Wenn ich dann Hauptkomponenten PC1
und PC2
Prädiktoren in einer Regression verwenden lm(y ~ PC1 + PC2)
würde, würde dies mein Verständnis der Wirkung der beiden Variablen y
je nachdem, welche Methode ich verwendet habe , völlig verändern ! Wie könnte ich dann sagen, dass sich PC1
das zB positiv y
und PC2
negativ auswirkt y
?
Außerdem: Wenn das Vorzeichen von PCA-Komponenten bedeutungslos ist, gilt dies auch für die Faktoranalyse (FA)? Ist es akzeptabel, das Vorzeichen einzelner PCA / FA-Komponentenwerte (oder von Belastungen als Spalte der Belastungsmatrix) umzukehren (umzukehren)?
quelle
Antworten:
PCA ist eine einfache mathematische Transformation. Wenn Sie die Vorzeichen der Komponente (n) ändern, ändern Sie nicht die Varianz, die in der ersten Komponente enthalten ist. Wenn Sie außerdem die Vorzeichen ändern, ändern die Gewichte (
prcomp( ... )$rotation
) auch das Vorzeichen, sodass die Interpretation genau gleich bleibt:zeigt an
und
pca2$loadings
zeigenAlso, warum bleibt die Interpretation gleich?
Sie führen die PCA-Regression für
y
Komponente 1 durch. In der ersten Version (prcomp
) ist der Koeffizient beispielsweise positiv: Je größer die Komponente 1 ist, desto größer ist das y. Was bedeutet es, wenn es um die ursprünglichen Variablen geht? Da das Gewicht der Variablen 1 (1:10
in a) positiv ist, zeigt dies, dass y umso größer ist, je größer die Variable 1 ist.Verwenden Sie jetzt die zweite Version (
princomp
). Da sich das Vorzeichen der Komponente geändert hat, ist der Koeffizient von y <über PC1 jetzt negativ, je größer das y, desto kleiner die Komponente 1. Aber so ist das Laden der Variablen 1; das heißt, je größer die Variable 1 ist, desto kleiner ist die Komponente 1, desto größer ist y - die Interpretation ist dieselbe.Möglicherweise ist die Verwendung eines Biplots der einfachste Weg, dies zu erkennen.
zeigt an
Das gleiche Biplot für die zweite Variante zeigt
Wie Sie sehen, werden die Bilder um 180 ° gedreht. Das Verhältnis zwischen den Gewichten / Belastungen (die roten Pfeile) und den Datenpunkten (die schwarzen Punkte) ist jedoch genau das gleiche. Somit bleibt die Interpretation der Komponenten unverändert.
quelle
princomp
. Während der Projektion werden meine projizierten Daten in einigen Dimensionen auch im Vorzeichen gespiegelt. Mein Ziel ist es, die Koeffizienten zu klassifizieren. Das Schild spielt hier noch keine Rolle?Diese Frage wird gebeten , eine Menge auf diesem Forum, so dass ich @ im Januar mit etwas allgemeinere Überlegungen ausgezeichneter Antwort ergänzen möchte.
Sowohl in der Hauptkomponentenanalyse (PCA) als auch in der Faktoranalyse (FA) verwenden wir die ursprünglichen Variablen , um mehrere latente Komponenten (oder latente Variablen) . Diese latenten Komponenten werden durch PCA- oder FA-Komponentenbewertungen angegeben. Jede Originalvariable ist eine lineare Kombination dieser Komponenten mit einigen Gewichten: Beispielsweise könnte die erste Originalvariable gut durch zweimal plus dreimal approximiert werden , so dass . Wenn die Bewertungen standardisiert sind, werden diese Gewichte ( und ) als Belastungen bezeichnet. Informell kann man das also sagenx1,x2,...xd z1,z2,...zk x1 z1 z2 x1≈2z1+3z2 2 3
Hier können wir sehen, dass, wenn wir eine latente Komponente, z. B. , nehmen und das Vorzeichen ihrer Bewertungen und ihrer Ladungen umdrehen , dies keinen Einfluss auf das Ergebnis (oder die Interpretation) hat, weil - 1 ⋅ - 1 = 1.z1
Die Schlussfolgerung ist, dass für jede PCA- oder FA-Komponente das Vorzeichen ihrer Bewertungen und ihrer Ladungen willkürlich und bedeutungslos ist. Es kann umgedreht werden, aber nur, wenn das Vorzeichen von Partitur und Aufladung gleichzeitig umgekehrt wird.
quelle
princomp
. Während der Projektion werden meine projizierten Daten in einigen Dimensionen auch im Vorzeichen gespiegelt. Mein Ziel ist es, die Koeffizienten zu klassifizieren. Das Schild spielt hier noch keine Rolle?Dies wurde oben gut beantwortet. Um eine weitere mathematische Relevanz bereitzustellen, entsprechen die Richtungen, in denen die Hauptkomponenten wirken, den Eigenvektoren des Systems. Wenn Sie einen positiven oder negativen PC haben, bedeutet dies nur, dass Sie auf einen Eigenvektor projizieren, der in die eine Richtung zeigt oder in die andere Richtung um . Unabhängig davon bleibt die Interpretation gleich! Es sollte auch hinzugefügt werden, dass die Längen Ihrer Hauptkomponenten einfach die Eigenwerte sind.180∘
quelle