PCA gemeinsame SkalaHallo JMP-Community
Gibt es eine Möglichkeit, PCA mit einer gemeinsamen Skala durchzuführen, wie dies mit K-Means-Clustern möglich ist?
Ich frage, weil der gemeinsame K-Means-Cluster für meine Daten viel besser ist, aber ich möchte die Clustering-Daten entfernen und nur das PCA-Biplot mit Achsen anzeigen
Am besten,
AnalytikGrafikBetreff: PCA-SkalaIch verstehe die Frage vielleicht nicht, aber PCA zentriert und skaliert automatisch alle Variablen, wenn Sie die PCA für die Korrelationen durchführen. Somit liegen alle Variablen auf der gleichen Skala.
Re: PCA-SkalaHallo, die Skalierung auf dem PCA ist die gleiche wie beim K-Mittel, wenn die Option "Spalten einzeln skaliert" ausgewählt ist
Aber ich kann keine Möglichkeit finden, eine gemeinsame Skalierung mit PCA wie bei Kmeans durchzuführen, wenn die Option "Spalten einzeln skaliert" nicht ausgewählt ist
Der Grund, warum ich dies tun muss, ist, dass der K-Means-Biplot die durch die Achsen erklärte Varianz nicht enthält. Wenn jemand weiß, wie man den K-Means-Plot dazu bringt, diesen Wert anzuzeigen, wäre ich Ihnen dankbar!
Betreff: PCA-SkalaAus der JMP-Hilfe zu K-Means:
Individuell skalierte Spalten
Skaliert jede Spalte unabhängig von den anderen Spalten. Verwenden Sie diese Option, wenn Variablen keine gemeinsame Messskala aufweisen und Sie nicht möchten, dass eine Variable den Clustering-Prozess dominiert. Beispielsweise kann eine Variable Werte zwischen 0 und 1000 haben, und eine andere Variable kann Werte zwischen 0 und 10 haben. In dieser Situation können Sie die Option verwenden, damit der Clustering-Prozess nicht von der ersten Variablen dominiert wird.
Wenn Sie sie NICHT einzeln skalieren, skalieren Sie die Variablen nicht.
Wenn Sie dies in Hauptkomponenten reproduzieren möchten, wählen Sie die Hauptkomponenten Auf Unskaliert (verfügbar über das rote Popup-Menü von Hauptkomponenten). Beachten Sie jedoch, dass alle Ihre Variablen auf einer ähnlichen Skala liegen sollten, damit diese Ergebnisse sinnvoll sind.
Betreff: Gemeinsame PCA-SkalaHinzufügen zu @Dan_Obermiller Kommentar, ich glaube, K Means zentriert die Spalten, skaliert sie nur nicht, wenn Sie diese Option verwenden. Um die Analyse mit PCA zu replizieren, möchten Sie also zuerst die Spalten zentrieren und dann eine unskalierte PCA durchführen.Wenn Sie das folgende Skript ausführen, sollten die bivariaten Score-Plots übereinstimmen.
Names default to here(1);
dt = Open( "$Sample_data/Lipid Data.jmp" );
//Center columns
dt << New Column("Age Centered", Numeric, "Continuous", Format("Best", 10), Formula(:Age - Col Mean(:Age)));
dt << New Column("Weight Centered", Numeric, "Continuous", Format("Best", 10), Formula(:Weight - Col Mean(:Weight)));
dt << New Column("Cholesterol Centered", Numeric, "Continuous", Format("Best", 10), Formula(:Cholesterol - Col Mean(:Cholesterol)));
dt << New Column("Triglycerides Centered", Numeric, "Continuous", Format("Best", 10), Formula(:Triglycerides - Col Mean(:Triglycerides)));
//Window with both analyses:
New Window( "Compare",
H List Box(
//K Means common scale:
dt << K Means Cluster(
Y( :Age, :Weight, :Cholesterol, :Triglycerides ),
Columns Scaled Individually( 0 ),
{Single Step( 0 ), Number of Clusters( 3 ), K Means Cluster,
Go( Show Biplot Rays( [0, 0, 1] ), Biplot( 1 ) )}
),
//PCA unscaled using centered columns
dt << Principal Components(
Y( :Age Centered, :Weight Centered, :Cholesterol Centered, :Triglycerides Centered ),
Estimation Method( "Default" ),
"on Unscaled"
)
)
);