Ich benutze ein Skript. Es ist für Kernaufzeichnungen. Ich habe einen Datenrahmen, der die verschiedenen Elementzusammensetzungen in den Spalten über eine gegebene Tiefe (in der ersten Spalte) zeigt. Ich möchte damit eine PCA durchführen und bin verwirrt über die zu wählende Standardisierungsmethode.
Hat jemand von euch das benutzt clr()
, um seine Daten für das vorzubereiten prcomp()
? Oder verfälscht es meine Lösungen? Ich habe versucht, die clr()
Daten vor der Verwendung der prcomp()
Funktion zusätzlich zur Verwendung der Attributskala in zu verwenden prcomp()
.
data_f_clr<- clr(data_f)
data_pca <- prcomp(data_f, center = TRUE, scale. = TRUE)
https://stat.ethz.ch/R-manual/R-devel/library/stats/html/prcomp.html
scale wird beschrieben, um die Daten so zu skalieren, dass sie eine Einheitsvarianz aufweisen. Da meine Daten einen ganz anderen Maßstab haben, denke ich, ist es das, was ich wollte. Das Problem ist, dass ich eine andere Lösung erhalte, wenn ich den obigen Code verwende oder wenn ich den überspringe clr()
(was das gewünschte Ergebnis ergibt). Aber ich möchte wissen, warum das clr()
in diesem Fall störend ist?
clr
passiert ...Antworten:
Ja, Sie können und sollten, wenn Ihre Daten kompositorisch sind.
Eine Übersicht aus dem Bereich der Mikrobiologie ist hier zu finden, die dazu motiviert, die CLR-Transformation gefolgt von PCA zur Analyse von Mikrobiom-Datensätzen (die per Definition zusammengesetzt sind) zu verwenden: https://www.frontiersin.org/articles/10.3389/fmicb .2017.02224 / full .
quelle
Es können Probleme mit Vanille-PCA bei CLR-Koordinaten auftreten. Es gibt zwei Hauptprobleme bei Zusammensetzungsdaten:
Betrachten wir das jetzt
Mit anderen Worten, CLR hebt die Wertebereichsbeschränkung auf (was für einige Anwendungen gut ist), entfernt jedoch nicht die Summenbeschränkung, was zu einer singulären Kovarianzmatrix führt, die effektiv (M) ANOVA / lineare Regression / ... unterbricht und macht PCA empfindlich gegenüber Ausreißern (da eine robuste Kovarianzschätzung eine Matrix mit vollem Rang erfordert). Von allen Kompositionstransformationen befasst sich meines Wissens nur ILR mit beiden Fragen, ohne wesentliche zugrunde liegende Annahmen. Die Situation ist jedoch etwas komplizierter. Die SVD der CLR-Koordinaten gibt Ihnen eine orthogonale Basis im ILR-Raum (ILR-Koordinaten erstrecken sich über eine Hyperebene in CLR), sodass sich Ihre Varianzschätzungen nicht zwischen ILR und CLR unterscheiden (das ist natürlich offensichtlich, da sowohl ILR als auch CLR Isometrien auf der ILR sind Simplex). Es gibt jedoch Methoden zur robusten Kovarianzschätzung an ILR-Koordinaten [2].
Aktualisiere ich
Nur um zu veranschaulichen, dass CLR für Korrelations- und ortsabhängige Methoden nicht gültig ist. Nehmen wir an, wir probieren eine Community von drei linear unabhängigen normalverteilten Komponenten 100 Mal aus. Der Einfachheit halber sei angenommen, dass alle Komponenten die gleichen Erwartungen (100) und Abweichungen (100) haben:
Update II
In Anbetracht der Antworten, die ich erhalten habe, muss ich darauf hinweisen, dass ich zu keinem Zeitpunkt in meiner Antwort gesagt habe, dass PCA bei CLR-transformierten Daten nicht funktioniert. Ich habe festgestellt, dass CLR PCA auf subtile Weise aufbrechen kann, was für die Dimensionsreduktion möglicherweise nicht wichtig ist, für die explorative Datenanalyse jedoch wichtig ist. Das von @Archie zitierte Papier befasst sich mit der mikrobiellen Ökologie. In diesem Bereich der Computational Biology werden PCA oder PCoA auf verschiedenen Distanzmatrizen verwendet, um Variationsquellen in den Daten zu untersuchen. Meine Antwort sollte nur in diesem Zusammenhang betrachtet werden. Darüber hinaus wird dies im Papier selbst hervorgehoben:
Gloor et al., 2017
Update III
Zusätzliche Verweise auf veröffentlichte Forschungsergebnisse (ich danke @Nick Cox für die Empfehlung, weitere Verweise hinzuzufügen):
quelle