Birinci sınıf öğrencilerine basit doğrusal korelasyonun (görsel olarak) nasıl açıklanacağını araştırıyorum.
Görselleştirmenin klasik yolu, düz bir regresyon çizgisine sahip bir Y ~ X saçılma grafiği vermek olacaktır.
Son zamanlarda, bu tür grafiklerin grafiğe 3 resim daha ekleyerek ve beni y ile bırakarak: y ~ 1, sonra y ~ x, artık (y ~ x) ~ x ve son olarak bırakarak genişletme fikriyle geldim. kalıntıların (y ~ x) ~ 1 (ortalanmış)
İşte böyle bir görselleştirmeye bir örnek:
Ve onu üretmek için R kodu:
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)
Bu da beni soruma götürüyor: Bu grafiğin nasıl geliştirilebileceğine dair herhangi bir öneriyi takdir ediyorum (metin, işaretler veya diğer ilgili görselleştirmelerle). Alakalı R kodu eklemek de güzel olacaktır.
Bir yön, R ^ 2 hakkında bazı bilgiler eklemektir (metin olarak veya x'in girişinden önce ve sonra varyansın büyüklüğünü gösteren satırlar ekleyerek) Başka bir seçenek, bir noktayı vurgulamak ve "daha iyi" "regresyon hattı sayesinde. Her bir katkı değerlendirilecektir.
require(mlbench) ; cor( mlbench.smiley()$x ); plot(mlbench.smiley()$x)