Ich habe verschiedene Variablen, die innerhalb einer Population interagieren. Grundsätzlich habe ich eine Bestandsaufnahme von Tausendfüßlern durchgeführt und einige andere Werte des Geländes gemessen, wie zum Beispiel:
- Die Art und die Anzahl der gesammelten Exemplare
- Die verschiedenen Umgebungen, in denen sich die Tiere befinden
- der pH
- Der Prozentsatz an organischem Material
- die Menge an P, K, Mg, Ca, Mn, Fe, Zn, Cu
- Ca + Mg / K-Beziehung
Grundsätzlich möchte ich PCA verwenden, um zu bestimmen, welche Variablen die Variabilität der Stichproben beeinflussen und die Gesamtstruktur (Umgebungen) unterscheiden. Welche Variablen soll ich für "Variablen" und welche für "Individuen" verwenden?
Antworten:
Wie in den Kommentaren von @amoeba erwähnt, betrachtet PCA nur einen Datensatz und zeigt Ihnen die wichtigsten (linearen) Variationsmuster dieser Variablen, die Korrelationen oder Kovarianzen zwischen diesen Variablen und die Beziehungen zwischen Stichproben (den Zeilen) ) in Ihrem Datensatz.
Was man normalerweise mit einem Artendatensatz und einer Reihe möglicher erklärender Variablen macht, ist, sich einer eingeschränkten Ordination anzupassen. In PCA werden die Hauptkomponenten, die Achsen im PCA-Biplot, als optimale lineare Kombinationen aller Variablen abgeleitet. Wenn Sie dies mit einem Datensatz der Bodenchemie mit den Variablen pH, , TotalCarbon, durchgeführt haben, stellen Sie möglicherweise fest, dass die erste Komponente warCa2+
und die zweite Komponente
Diese Komponenten können aus den gemessenen Variablen frei ausgewählt werden. Es werden diejenigen ausgewählt, die nacheinander die größte Variation im Datensatz erklären und bei denen jede lineare Kombination orthogonal (nicht korreliert mit den anderen) ist.
In einer eingeschränkten Ordination haben wir zwei Datensätze, aber wir können nicht frei wählen, welche linearen Kombinationen des ersten Datensatzes (die obigen chemischen Bodendaten) wir wollen. Stattdessen müssen wir lineare Kombinationen der Variablen im zweiten Datensatz auswählen, die die Variation im ersten am besten erklären. Im Fall von PCA ist der eine Datensatz die Antwortmatrix, und es gibt keine Prädiktoren (Sie können sich die Antwort als Vorhersage selbst vorstellen). Im eingeschränkten Fall haben wir einen Antwortdatensatz, den wir mit einem Satz erklärender Variablen erklären möchten.
Obwohl Sie nicht erklärt haben, welche Variablen die Antwort sind, möchten Sie normalerweise die Variation der Häufigkeit oder Zusammensetzung dieser Arten (dh der Antworten) anhand der erklärenden Umgebungsvariablen erklären.
Die eingeschränkte Version von PCA wird in ökologischen Kreisen als Redundanzanalyse (RDA) bezeichnet. Dies setzt ein zugrunde liegendes lineares Antwortmodell für die Art voraus, das entweder nicht oder nur dann geeignet ist, wenn Sie kurze Gradienten haben, entlang derer die Art reagiert.
Eine Alternative zu PCA ist die sogenannte Korrespondenzanalyse (CA). Dies ist nicht eingeschränkt, aber es liegt ein unimodales Antwortmodell zugrunde, das etwas realistischer ist, was die Reaktion von Arten entlang längerer Gradienten betrifft. Beachten Sie auch, dass CA relative Häufigkeiten oder Zusammensetzung modelliert, PCA modelliert die rohen Häufigkeiten.
Es gibt eine eingeschränkte Version von CA, die als eingeschränkte oder kanonische Korrespondenzanalyse (CCA) bezeichnet wird - nicht zu verwechseln mit einem formaleren statistischen Modell, das als kanonische Korrelationsanalyse bezeichnet wird.
Sowohl in RDA als auch in CCA besteht das Ziel darin, die Variation der Artenhäufigkeit oder -zusammensetzung als eine Reihe linearer Kombinationen der erklärenden Variablen zu modellieren.
Aus der Beschreibung geht hervor, dass Ihre Frau die Variation der Zusammensetzung (oder Häufigkeit) der Tausendfüßer-Arten anhand der anderen gemessenen Variablen erklären möchte.
Einige warnende Worte; RDA und CCA sind nur multivariate Regressionen. CCA ist nur eine gewichtete multivariate Regression. Alles, was Sie über Regression gelernt haben, gilt, und es gibt noch ein paar andere Fallstricke:
Mein Rat ist also der gleiche wie bei der Regression. Überlegen Sie sich im Voraus, was Ihre Hypothesen sind, und schließen Sie Variablen ein, die diese Hypothesen widerspiegeln. Werfen Sie nicht einfach alle erklärenden Variablen in die Mischung.
Beispiel
Uneingeschränkte Ordination
PCA
Ich zeige ein Beispiel für den Vergleich von PCA, CA und CCA mit dem veganen Paket für R, das ich pflege und das für diese Ordnungsmethoden geeignet ist:
vegan standardisiert die Trägheit im Gegensatz zu Canoco nicht, daher beträgt die Gesamtvarianz 1826 und die Eigenwerte sind in denselben Einheiten und summieren sich zu 1826
Wir sehen auch, dass der erste Eigenwert ungefähr die Hälfte der Varianz beträgt und mit den ersten beiden Achsen ~ 80% der Gesamtvarianz erklärt haben
Aus den Bewertungen der Proben und Arten der ersten beiden Hauptkomponenten kann ein Biplot gezogen werden
Hier gibt es zwei Probleme
CA.
Eine CA kann bei beiden Punkten hilfreich sein, da sie aufgrund des unimodalen Antwortmodells einen langen Gradienten besser handhabt und die relative Zusammensetzung von Arten modelliert, die nicht roh vorkommen.
Der vegane / R- Code hierfür ähnelt dem oben verwendeten PCA-Code
Hier erklären wir ungefähr 40% der Variation zwischen Standorten in ihrer relativen Zusammensetzung
Die gemeinsame Darstellung der Arten- und Standortwerte wird jetzt weniger von einigen wenigen Arten dominiert
Welche PCA oder CA Sie wählen, sollte durch die Fragen bestimmt werden, die Sie an die Daten stellen möchten. Normalerweise sind wir bei Artendaten häufiger an Unterschieden in der Artenreihe interessiert, daher ist CA eine beliebte Wahl. Wenn wir einen Datensatz von Umgebungsvariablen haben, z. B. Wasser- oder Bodenchemie, würden wir nicht erwarten, dass diese entlang von Gradienten unimodal reagieren, sodass CA unangemessen wäre und PCA (einer Korrelationsmatrix, die
scale = TRUE
imrda()
Aufruf verwendet wird) angemessener.Eingeschränkte Ordination; CCA
Wenn wir nun einen zweiten Datensatz haben, mit dem wir Muster im ersten Speziesdatensatz erklären möchten, müssen wir eine eingeschränkte Ordination verwenden. Oft ist hier CCA die Wahl, aber RDA ist eine Alternative, ebenso wie RDA nach der Transformation der Daten, damit sie besser mit Artendaten umgehen können.
Wir verwenden die
cca()
Funktion wieder, geben jedoch entweder zwei Datenrahmen (X
für Arten undY
für erklärende / prädiktive Variablen) oder eine Modellformel an, in der die Form des Modells aufgeführt ist, das angepasst werden soll.Um alle Variablen einzuschließen, könnten wir
varechem ~ ., data = varechem
als Formel verwenden, um alle Variablen einzuschließen - aber wie ich oben sagte, ist dies im Allgemeinen keine gute IdeeDas Triplot der obigen Ordination wird unter Verwendung des
plot()
Verfahrens erzeugtJetzt besteht die Aufgabe natürlich darin, herauszufinden, welche dieser Variablen tatsächlich wichtig ist. Beachten Sie auch, dass wir ungefähr 2/3 der Artenvarianz mit nur 13 Variablen erklärt haben. Eines der Probleme bei der Verwendung aller Variablen in dieser Ordination besteht darin, dass wir eine gewölbte Konfiguration in Stichproben- und Artenbewertungen erstellt haben, die lediglich ein Artefakt der Verwendung zu vieler korrelierter Variablen ist.
Wenn Sie mehr darüber erfahren möchten, lesen Sie die vegane Dokumentation oder ein gutes Buch über multivariate ökologische Datenanalysen.
Beziehung zur Regression
Es ist am einfachsten, den Zusammenhang mit RDA zu veranschaulichen, aber CCA ist genauso, außer dass alles Rand- und Spalten-Zwei-Wege-Tabellensummen als Gewichte umfasst.
Im Kern entspricht RDA der Anwendung von PCA auf eine Matrix angepasster Werte aus einer multiplen linearen Regression, die an die Werte jeder Art (Antwort) (z. B. Häufigkeiten) angepasst ist, wobei Prädiktoren durch die Matrix der erklärenden Variablen angegeben werden.
In R können wir dies als tun
Die Eigenwerte für diese beiden Ansätze sind gleich:
Aus irgendeinem Grund kann ich nicht erreichen, dass die Achsenwerte (Ladungen) übereinstimmen, aber diese sind immer skaliert (oder nicht), daher muss ich genau untersuchen, wie diese hier durchgeführt werden.
Wir machen die RDA nicht über,
rda()
wie ich mitlm()
etc gezeigt habe, aber wir verwenden eine QR-Zerlegung für den linearen Modellteil und dann SVD für den PCA-Teil. Die wesentlichen Schritte sind jedoch dieselben.quelle
fitted()