Interpretation von 2D-Korrespondenzanalyseplots


19

Ich habe weit und breit im Internet gesucht ... Ich habe noch keinen wirklich guten Überblick über die Interpretation von 2D-Korrespondenzanalyseplots gefunden. Könnte jemand einen Rat zur Interpretation der Entfernungen zwischen Punkten geben?

Vielleicht würde ein Beispiel helfen. Hier ist eine Handlung, die auf vielen der Websites zu finden ist, auf denen die Korrespondenzanalyse behandelt wird. Die roten Dreiecke stehen für die Augenfarbe und die schwarzen Punkte für die Haarfarbe.

Alt-Text

Wenn Sie sich die obige Grafik ansehen, können Sie einige Aussagen darüber treffen, was Sie in diesen Daten sehen. Interessantes zu den verschiedenen Dimensionen und Beziehungen zwischen Dreiecken und Punkten?

Eine Erklärung der Zeilenpunkte gegenüber den Spaltenpunkten und die Verwendung des Wortes "Profil" mit besonderem Schwerpunkt auf dem Beispiel wäre von entscheidender Bedeutung.


1
Betrachten Sie zusätzlich zu @ chls hervorragendem Bericht auch diesen, der einfache CA- und PCA-Analysen als reine Formen der "Biplot-Analyse" betrachtet.
TTNPHNS

Antworten:


23

Erstens gibt es bei der Korrespondenzanalyse verschiedene Möglichkeiten, sogenannte Biplots zu erstellen . In allen Fällen besteht die Grundidee darin, einen Weg zu finden, um die beste 2D-Annäherung der "Abstände" zwischen Zeilen- und Spaltenzellen zu zeigen. Mit anderen Worten, wir suchen eine Hierarchie (wir sprechen auch von "Ordination") der Beziehungen zwischen Zeilen und Spalten einer Kontingenztabelle.

In Kürze zerlegt CA die Chi-Quadrat-Statistik, die der Zwei-Wege-Tabelle zugeordnet ist, in orthogonale Faktoren, die die Trennung zwischen Zeilen- und Spaltenbewertungen (dh die aus der Profiltabelle berechneten Häufigkeiten) maximieren. Hier sehen Sie, dass es eine gewisse Verbindung mit PCA gibt, aber das Maß für die Varianz (oder die Metrik), das in CA beibehalten wird, ist , das nur von Spaltenprofilen abhängt (da Modalitäten mit großen Werten tendenziell wichtiger werden) Grenzwerte, wir können auch die anfänglichen Daten neu gewichten, aber dies ist eine andere Geschichte).χ2

Hier ist eine detailliertere Antwort. Die Implementierung, die in der corresp()Funktion (in MASS) vorgeschlagen wird, folgt aus der Sicht von CA als SVD-Zerlegung von Dummy-codierten Matrizen, die die Zeilen und Spalten darstellen (so dass , wobei die Gesamtstichprobe ist). Dies steht im Licht der kanonischen Korrelationsanalyse. Im Gegensatz dazu betrachtet die französische Schule für Datenanalyse CA als eine Variante des PCA, bei der Sie nach den Richtungen suchen, die die "Trägheit" in der Datenwolke maximieren. Dies erfolgt durch Diagonalisieren der Trägheitsmatrix, die aus der zentrierten und skalierten Zweiwegetabelle (mit Randfrequenzen) berechnet wurde, und durch Ausdrücken von Zeilen- und Spaltenprofilen in diesem neuen Koordinatensystem.NRtC=NN

Wenn Sie eine Tabelle mit Zeilen und Spalten betrachten, wird jede Zeile mit ihrer entsprechenden Grenzsumme gewichtet, die eine Reihe von bedingten Häufigkeiten ergibt, die jeder Zeile zugeordnet sind: . Die Randspalte wird als Mittelwertprofil (für Zeilen) bezeichnet. Dadurch erhalten wir einen Koordinatenvektor, der auch als Profil (zeilenweise) bezeichnet wird. Für die Spalte gilt . In beiden Fällen betrachten wir die Zeilenprofile (die ihrem Gewicht ) als Individuen im Spaltenraum und die Spaltenprofile (die ihrem Gewicht zugeordnet sind)j = 1 , ... , J f j | i = n i j / n i f i | j = n i j / n j I f i J f j χ 2 i i 'i=1,,Ij=1,,Jfj|ich=nichj/nichfich|j=nichj/njichfichJfj ) als Individuen im Zeilenraum. Die Metrik, die zur Berechnung der Nähe zwischen zwei Personen verwendet wird, ist die Entfernung. Zum Beispiel haben wir zwischen zwei Zeilen undχ2ichich

dχ22(ich,ich)=j=1Jnnj(nichjnich-nichjnich)2

Sie können den Zusammenhang mit der Statistik auch erkennen, indem Sie feststellen, dass es sich lediglich um die Entfernung zwischen beobachteten und erwarteten Zählungen handelt, bei der die erwarteten Zählungen (unter Unabhängigkeit der beiden Variablen) als berechnet werden. für jede Zelle . Wenn die beiden Variablen unabhängig wären, wären die Zeilenprofile alle gleich und mit dem entsprechenden Randprofil identisch. Mit anderen Worten, wenn Unabhängigkeit besteht, wird Ihre Kontingenztabelle vollständig durch ihre Ränder bestimmt.χ2H0nich×nj/n(ich,j)

Wenn Sie eine PCA für die Zeilenprofile realisieren (als Einzelpersonen betrachtet), ersetzen Sie den euklidischen Abstand durchχ2Entfernung, dann erhalten Sie Ihre CA. Die erste Hauptachse ist die Linie, die allen Punkten am nächsten ist, und der entsprechende Eigenwert ist die Trägheit, die durch diese Dimension erklärt wird. Dasselbe können Sie mit den Spaltenprofilen tun. Es kann gezeigt werden, dass es eine Symmetrie zwischen den beiden Ansätzen gibt, und insbesondere, dass die Hauptkomponenten (PC) für die Spaltenprofile denselben Eigenwerten zugeordnet sind wie die PCs für die Zeilenprofile. In einem Biplot werden die Koordinaten der Individuen in diesem neuen Koordinatensystem angezeigt, obwohl die Individuen in einem separaten Fakultätsraum dargestellt werden. Vorausgesetzt, jedes Individuum / jede Modalität ist in ihrem Fakultätsraum gut vertreten (siehecos2der Modalität mit der 1. Hauptachse, die ein Maß für die Korrelation / Assoziation ist, können Sie sogar die Nähe zwischen den Elementen und Ihrer Kontingenztabelle interpretieren (wie dies durch Betrachten der Residuen Ihres geschehen kann Test der Unabhängigkeit, zB ).ichjχ2chisq.test(tab)$expected-chisq.test(tab)$observed

Die Gesamtträgheit Ihrer CA (= die Summe der Eigenwerte) ist die Statistik geteilt durch (das ist Pearsons ).χ2nϕ2

Tatsächlich gibt es mehrere Pakete , die Sie mit einem verbesserten CAs im Vergleich zu der Funktion , die bei dem bereitstellen MASSPaket: ade4 , FactoMineR , Anacor und ca .

Die neueste Version wurde für Ihre Abbildung verwendet, und im Journal of Statistical Software wurde ein Artikel veröffentlicht, in dem die meisten Funktionen erläutert werden: Korrespondenzanalyse in R mit zwei- und dreidimensionalen Grafiken: Das ca-Paket .

So kann Ihr Beispiel für Augen- / Haarfarben auf viele Arten reproduziert werden:

data(HairEyeColor)
tab <- apply(HairEyeColor, c(1, 2), sum) # aggregate on gender
tab

library(MASS)
plot(corresp(tab, nf=2))
corresp(tab, nf=2)

library(ca)
plot(ca(tab))
summary(ca(tab, nd=2))

library(FactoMineR)
CA(tab)
CA(tab, graph=FALSE)$eig  # == summary(ca(tab))$scree[,"values"]
CA(tab, graph=FALSE)$row$contrib

library(ade4)
scatter(dudi.coa(tab, scannf=FALSE, nf=2))

In allen Fällen ist das, was wir im resultierenden Biplot lesen, im Grunde genommen (ich beschränke meine Interpretation auf die 1. Achse, die den größten Teil der Trägheit erklärt):

  • die erste Achse hebt den klaren Gegensatz zwischen heller und dunkler Haarfarbe und zwischen blauen und braunen Augen hervor;
  • Menschen mit blonden Haaren neigen auch dazu, blaue Augen zu haben, und Menschen mit schwarzen Haaren neigen dazu, braune Augen zu haben.

Es gibt viele zusätzliche Ressourcen zur Datenanalyse im Bioinformatiklabor in Lyon, Frankreich. Dies ist hauptsächlich auf Französisch, aber ich denke, es wäre kein allzu großes Problem für Sie. Die folgenden beiden Handouts sollten als erster Start interessant sein:

Wenn Sie eine vollständige disjonktive (Dummy-) Codierung von Variablen in Betracht ziehen , erhalten Sie schließlich die Mehrfachkorrespondenzanalyse .k


1
@Brandon Die 1. Achse ist eine Achse der "Dominanz" (hell -> dunkel) für beide Modalitäten, aber wir können auch sehen, dass die 1. Achse blaue und grüne Augen braunen und haselnussbraunen Augen gegenüberstellt (ihre Koordinaten haben entgegengesetzte Vorzeichen). und die Kombination aus rotem Haar und grünem Auge - was ziemlich ungewöhnlich ist - tragen hauptsächlich zur 2. Faktorachse bei. Da diese Achse nur 9,5% der Gesamtträgheit erklärt, ist es schwierig, eindeutige Schlussfolgerungen zu ziehen (insbesondere genetische Hypothesen).
Chl

1
@Brandon Zwei weitere Referenzen (diesmal in englischer Sprache): der PBIL-Kurs ( j.mp/cHZT7X ) und die Ressourcen von Michael Friendly ( j.mp/cYHyVn + vcdund vcdExtraR-Pakete, letzteres mit einer schönen Vignette).
Chl

2
@Brandon Ja, eine Modalität = eine Kategorie für Ihre Variable. Bei Ihrer zweiten Frage corhandelt es sich um die quadratische Korrelation mit der Achse und ctrum den Beitrag (er muss durch 10 geteilt werden, um als% gelesen zu werden). "Rotes Haar" trägt also 55,1% zur Trägheit der 2. Achse bei. In gewissem Sinne fand ich die Ausgabe von FactoMineR "intuitiver" ( CA(tab, graph=FALSE)$row$contribgibt Ihnen direkt das%).
Chl

1
@chl: Wow, für jemanden, der nichts über CCA oder den "französischen Weg" weiß, war dies eine großartige Lektüre! Danke vielmals. Ich fand dies auch mit einigem googeln, das von Interesse sein könnte: www-stat.stanford.edu/~susan/papers/dfc.pdf
ars

1
@ars (+1) Danke für den Link (wusste nichts über diese Monographie, sie sieht interessant aus). Meine besten Empfehlungen für die jüngsten Entwicklungen sind ALLE Artikel von Jan de Leeuw und diese beiden Bücher: Multiple Correspondence Analysis und verwandte Methoden von Greenacre sowie Geometric Data Analysis: Von der Korrespondenzanalyse zur strukturierten Datenanalyse von Le Roux & Rouanet (auf französische Weise). .
Chl
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.