Ich suche, wie ich Studenten im ersten Jahr (visuell) die einfache lineare Korrelation erklären kann.
Die klassische Art der Visualisierung wäre, ein Y ~ X-Streudiagramm mit einer geraden Regressionslinie zu erstellen.
Vor kurzem kam mir die Idee, diese Art von Grafik zu erweitern, indem ich dem Plot 3 weitere Bilder hinzufügte, so dass ich Folgendes hatte: das Streudiagramm von y ~ 1, dann von y ~ x, resid (y ~ x) ~ x und zuletzt von Residuen (y ~ x) ~ 1 (zentriert auf den Mittelwert)
Hier ist ein Beispiel für eine solche Visualisierung:
Und der R-Code, um es zu erzeugen:
set.seed(345)
x <- runif(50) * 10
y <- x +rnorm(50)
layout(matrix(c(1,2,2,2,2,3 ,3,3,3,4), 1,10))
plot(y~rep(1, length(y)), axes = F, xlab = "", ylim = range(y))
points(1,mean(y), col = 2, pch = 19, cex = 2)
plot(y~x, ylab = "", )
abline(lm(y~x), col = 2, lwd = 2)
plot(c(residuals(lm(y~x)) + mean(y))~x, ylab = "", ylim = range(y))
abline(h =mean(y), col = 2, lwd = 2)
plot(c(residuals(lm(y~x)) + mean(y))~rep(1, length(y)), axes = F, xlab = "", ylab = "", ylim = range(y))
points(1,mean(y), col = 2, pch = 19, cex = 2)
Was mich zu meiner Frage führt: Ich würde mich über Vorschläge freuen, wie dieses Diagramm verbessert werden kann (entweder mit Text, Markierungen oder anderen relevanten Visualisierungen). Das Hinzufügen eines relevanten R-Codes ist ebenfalls hilfreich.
Eine Richtung besteht darin, einige Informationen des R ^ 2 hinzuzufügen (entweder durch Text oder durch Hinzufügen von Linien, die die Größe der Varianz vor und nach der Einführung von x darstellen). Eine andere Option besteht darin, einen Punkt hervorzuheben und zu zeigen, wie es "besser" ist erklärte "dank der Regressionslinie. Jede Eingabe wird geschätzt.
quelle
require(mlbench) ; cor( mlbench.smiley()$x ); plot(mlbench.smiley()$x)
Antworten:
Hier sind einige Vorschläge (zu Ihrer Darstellung, nicht dazu, wie ich die Korrelations- / Regressionsanalyse veranschaulichen würde):
rug()
.In diesem Diagramm wird davon ausgegangen, dass X und Y nicht gepaarte Daten sind. Andernfalls würde ich mich zusätzlich zum Streudiagramm an ein Bland-Altman-Diagramm ( gegen ) halten.( X + Y ) / 2( X.- Y.) ( X.+ Y.) / 2
quelle
Sie können Ihre genaue Frage nicht beantworten, aber die folgenden Fragen könnten interessant sein, indem Sie eine mögliche Gefahr linearer Korrelationen anhand einer Antwort von stackoveflow visualisieren :
Die Antwort von @Gavin Simpson und @ bill_080 enthält auch nette Korrelationsdiagramme zum selben Thema.
quelle
Ich hätte zwei Diagramme mit zwei Feldern, beide haben das xy-Diagramm links und ein Histogramm rechts. In der ersten Darstellung wird eine horizontale Linie am Mittelwert von y platziert und Linien erstrecken sich von diesem zu jedem Punkt, die die Residuen der y-Werte vom Mittelwert darstellen. Das Histogramm mit diesem Diagramm zeichnet einfach diese Residuen auf. Dann enthält das xy-Diagramm im nächsten Paar eine Linie, die die lineare Anpassung darstellt, und wieder vertikale Linien, die die Residuen darstellen, die in einem Histogramm rechts dargestellt sind. Halten Sie die x-Achse der Histogramme konstant, um die Verschiebung zu niedrigeren Werten in der linearen Anpassung relativ zur mittleren "Anpassung" hervorzuheben.
quelle
Ich denke, was Sie vorschlagen, ist gut, aber ich würde es in drei verschiedenen Beispielen tun
1) X und Y sind völlig unabhängig. Entfernen Sie einfach "x" aus dem r-Code, der y generiert (y1 <-rnorm (50)).
2) Das Beispiel, das Sie gepostet haben (y2 <- x + rnorm (50))
3) Die X sind Y sind die gleiche Variable. Entfernen Sie einfach "rnorm (50)" aus dem r-Code, der y (y3 <-x) generiert.
Dies würde expliziter zeigen, wie eine Erhöhung der Korrelation die Variabilität der Residuen verringert. Sie müssen nur sicherstellen, dass sich die vertikale Achse nicht mit jedem Diagramm ändert. Dies kann passieren, wenn Sie die Standardskalierung verwenden.
Sie können also drei Diagramme r1 gegen x, r2 gegen x und r3 gegen x vergleichen. Ich benutze "r", um die Residuen aus der Anpassung mit y1, y2 bzw. y3 anzuzeigen.
Meine R-Fähigkeiten beim Plotten sind ziemlich hoffnungslos, daher kann ich hier nicht viel Hilfe anbieten.
quelle