Làm thế nào để trình bày mức tăng trong phương sai được giải thích nhờ vào mối tương quan của Y và X?


11

Tôi đang tìm cách giải thích (trực quan) giải thích tương quan tuyến tính đơn giản cho sinh viên năm thứ nhất.

Cách cổ điển để hình dung sẽ là đưa ra một biểu đồ phân tán Y ~ X với đường hồi quy thẳng.

Gần đây, tôi nảy ra ý tưởng mở rộng loại đồ họa này bằng cách thêm vào cốt truyện thêm 3 hình ảnh, để lại cho tôi: cốt truyện phân tán của y ~ 1, sau đó là y ~ x, Resid (y ~ x) ~ x và cuối cùng phần dư (y ~ x) ~ 1 (tập trung vào giá trị trung bình)

Dưới đây là một ví dụ về một hình dung như vậy: văn bản thay thế

Và mã R để sản xuất nó:

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)

Điều này dẫn tôi đến câu hỏi của tôi: Tôi sẽ đánh giá cao bất kỳ đề xuất nào về cách biểu đồ này có thể được tăng cường (bằng văn bản, nhãn hiệu hoặc bất kỳ loại hình ảnh trực quan nào khác). Thêm mã R có liên quan cũng sẽ tốt đẹp.

Một hướng là thêm một số thông tin của R ^ 2 (bằng văn bản hoặc bằng cách nào đó thêm các dòng thể hiện độ lớn của phương sai trước và sau khi giới thiệu x) Một tùy chọn khác là làm nổi bật một điểm và cho thấy nó "tốt hơn" giải thích "nhờ đường hồi quy. Bất kỳ đầu vào sẽ được đánh giá cao.


1
Đồng thời bạn đang cho thấy hồi quy tuyến tính tốt như thế nào, vui lòng cũng cho khán giả thấy nó thất bại như thế nào trong các tình huống mà các mối quan hệ không được mô tả tốt bằng các đường thẳng:require(mlbench) ; cor( mlbench.smiley()$x ); plot(mlbench.smiley()$x)
DWin

Sẽ làm Dwin ... :-)
Tal Galili

Câu trả lời:


4

Dưới đây là một số gợi ý (về cốt truyện của bạn, không phải về cách tôi sẽ minh họa phân tích tương quan / hồi quy):

  • Hai lô đơn biến bạn hiển thị ở lề phải và lề trái có thể được đơn giản hóa bằng một lệnh gọi đến rug();
  • Tôi tìm thấy nhiều thông tin hơn để hiển thị một biểu đồ mật độ của và hoặc một ô vuông, có nguy cơ bị gợi lên ý tưởng về một giả định hai quy tắc không có ý nghĩa trong bối cảnh này;XY
  • Ngoài đường hồi quy, đáng để hiển thị một ước tính phi tham số của xu hướng, giống như một hoàng thổ (đây là thông lệ tốt và có nhiều thông tin về các phi tuyến tính cục bộ có thể);
  • Điểm có thể được tô sáng (với màu sắc hoặc kích thước khác nhau) theo hiệu ứng Đòn bẩy hoặc khoảng cách Cook, tức là bất kỳ biện pháp nào cho thấy mức độ ảnh hưởng của từng giá trị riêng lẻ trên đường hồi quy ước tính. Tôi sẽ bình luận thứ hai @ DWin và tôi nghĩ tốt hơn là làm nổi bật cách các điểm riêng lẻ "làm giảm" mức độ phù hợp hoặc tạo ra một số loại rời khỏi giả định tuyến tính.

Đáng chú ý, biểu đồ này giả sử X và Y là dữ liệu không được ghép nối, nếu không tôi sẽ dính vào một biểu đồ Bland-Altman ( so với ), ngoài phân tán.(X-Y)(X+Y)/2


1

Không trả lời chính xác câu hỏi của bạn, nhưng những điều sau đây có thể thú vị bằng cách hình dung một cạm bẫy có thể có của các mối tương quan tuyến tính dựa trên câu trả lời từ stackoveflow :

par(mfrow=c(2,1))

set.seed(1)
x <- rnorm(1000)
y <- rnorm(1000)
plot(y~x, ylab = "", main=paste('1000 random values (r=', round(cor(x,y), 4), ')',  sep=''))
abline(lm(y~x), col = 2, lwd = 2)

x <- c(x, 500)
y <- c(y, 500)
cor(x,y)
plot(y~x, ylab = "", main=paste('1000 random values and (500, 500) (r=', round(cor(x,y), 4), ')',  sep=''))
abline(lm(y~x), col = 2, lwd = 2)

văn bản thay thế

Câu trả lời của @Gavin Simpson@ bill_080 cũng bao gồm các lô tương quan tốt đẹp trong cùng một chủ đề.


1

Tôi có hai ô hai bảng, cả hai đều có ô xy ở bên trái và biểu đồ bên phải. Trong biểu đồ đầu tiên, một đường nằm ngang được đặt ở giá trị trung bình của y và các đường kéo dài từ điểm này đến từng điểm, thể hiện phần dư của các giá trị y từ giá trị trung bình. Biểu đồ với điều này chỉ đơn giản là vẽ những phần dư này. Sau đó, trong cặp tiếp theo, biểu đồ xy chứa một dòng biểu thị sự phù hợp tuyến tính và một lần nữa các đường thẳng đứng đại diện cho phần dư, được biểu thị trong biểu đồ bên phải. Giữ trục x của biểu đồ không đổi để làm nổi bật sự dịch chuyển sang các giá trị thấp hơn trong độ khớp tuyến tính so với "độ khớp" trung bình.


1

Tôi nghĩ những gì bạn đề xuất là tốt, nhưng tôi sẽ làm nó trong ba ví dụ khác nhau

1) X và Y hoàn toàn không liên quan. Chỉ cần xóa "x" khỏi mã r tạo ra y (y1 <-rnorm (50))

2) Ví dụ bạn đã đăng (y2 <- x + rnorm (50))

3) X là Y là cùng một biến. Chỉ cần xóa "rnorm (50)" khỏi mã r tạo ra y (y3 <-x)

Điều này sẽ cho thấy rõ hơn làm thế nào tăng sự tương quan làm giảm sự thay đổi trong phần dư. Bạn chỉ cần đảm bảo rằng trục dọc không thay đổi theo từng ô, điều này có thể xảy ra nếu bạn đang sử dụng tỷ lệ mặc định.

Vì vậy, bạn có thể so sánh ba lô r1 vs x, r2 vs x và r3 vs x. Tôi đang sử dụng "r" để chỉ ra phần dư từ sự phù hợp bằng cách sử dụng y1, y2 và y3 tương ứng.

Kỹ năng R của tôi trong âm mưu là khá vô vọng, vì vậy tôi không thể cung cấp nhiều trợ giúp ở đây.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.