Tiêu đề của câu hỏi này cho thấy một sự hiểu lầm cơ bản. Ý tưởng cơ bản nhất về tương quan là "khi một biến tăng, biến khác tăng (tương quan dương), giảm (tương quan âm) hay giữ nguyên (không tương quan)" với thang đo tương quan dương hoàn hảo là +1, không có tương quan là 0 và tương quan âm hoàn hảo là -1. Ý nghĩa của "hoàn hảo" phụ thuộc vào biện pháp tương quan được sử dụng: cho Pearson tương quan nó có nghĩa là các điểm trên một lời nói dối đồ phân tán ngay trên một đường thẳng (dốc lên cho +1 và xuống cho -1), vì tương quan Spearman rằng xếp hạng chính xác đồng ý (hoặc chính xác là không đồng ý, do đó, đầu tiên được ghép nối với cuối cùng, cho -1) và cho tau của Kendallrằng tất cả các cặp quan sát có cấp bậc phù hợp (hoặc bất hòa cho -1). Một trực giác về cách thức hoạt động của nó trong thực tế có thể được thu thập từ các tương quan Pearson cho các sơ đồ phân tán sau ( tín dụng hình ảnh ):
Cái nhìn sâu sắc hơn đến từ việc xem xét Bộ tứ của Anscombe trong đó cả bốn bộ dữ liệu có tương quan Pearson +0.816, mặc dù chúng theo mô hình "khi tăng, có xu hướng tăng" theo những cách rất khác nhau ( tín dụng hình ảnh ):yxy
Nếu biến độc lập của bạn là danh nghĩa thì sẽ không có ý nghĩa gì khi nói về những gì xảy ra "khi tăng". Trong trường hợp của bạn, "Chủ đề của cuộc trò chuyện" không có giá trị bằng số có thể lên xuống. Vì vậy, bạn không thể tương quan "Chủ đề của cuộc trò chuyện" với "Thời lượng của cuộc trò chuyện". Nhưng như @ttnphns đã viết trong các bình luận, có những biện pháp về sức mạnh của sự liên kết mà bạn có thể sử dụng có phần giống nhau. Dưới đây là một số dữ liệu giả mạo và mã R đi kèm:x
data.df <- data.frame(
topic = c(rep(c("Gossip", "Sports", "Weather"), each = 4)),
duration = c(6:9, 2:5, 4:7)
)
print(data.df)
boxplot(duration ~ topic, data = data.df, ylab = "Duration of conversation")
Cung cấp cho:
> print(data.df)
topic duration
1 Gossip 6
2 Gossip 7
3 Gossip 8
4 Gossip 9
5 Sports 2
6 Sports 3
7 Sports 4
8 Sports 5
9 Weather 4
10 Weather 5
11 Weather 6
12 Weather 7
Bằng cách sử dụng "Tin đồn" làm cấp độ tham chiếu cho "Chủ đề" và xác định các biến giả nhị phân cho "Thể thao" và "Thời tiết", chúng ta có thể thực hiện hồi quy bội.
> model.lm <- lm(duration ~ topic, data = data.df)
> summary(model.lm)
Call:
lm(formula = duration ~ topic, data = data.df)
Residuals:
Min 1Q Median 3Q Max
-1.50 -0.75 0.00 0.75 1.50
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 7.5000 0.6455 11.619 1.01e-06 ***
topicSports -4.0000 0.9129 -4.382 0.00177 **
topicWeather -2.0000 0.9129 -2.191 0.05617 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.291 on 9 degrees of freedom
Multiple R-squared: 0.6809, Adjusted R-squared: 0.6099
F-statistic: 9.6 on 2 and 9 DF, p-value: 0.005861
Chúng ta có thể hiểu việc chặn được ước tính là đưa ra thời lượng trung bình của các cuộc trò chuyện G Rum là 7,5 phút và các hệ số ước tính cho các biến giả khi hiển thị các cuộc hội thoại Thể thao ngắn hơn trung bình 4 phút so với G đồn, trong khi các cuộc hội thoại về Thời tiết ngắn hơn G Rum 2 phút. Một phần của đầu ra là hệ số xác định . Một cách giải thích cho điều này là mô hình của chúng tôi giải thích 68% phương sai trong thời lượng hội thoại. Một cách giải thích khác của là bằng cách tạo căn bậc hai, chúng ta có thể tìm thấy hệ số tương quan nhiều .R 2 RR2=0.6809R2R
> rsq <- summary(model.lm)$r.squared
> rsq
[1] 0.6808511
> sqrt(rsq)
[1] 0.825137
Lưu ý rằng 0.825 không phải là mối tương quan giữa Thời lượng và Chủ đề - chúng ta không thể tương quan hai biến đó vì Chủ đề là danh nghĩa. Những gì nó thực sự đại diện là mối tương quan giữa thời lượng được quan sát và những gì được dự đoán (trang bị) theo mô hình của chúng tôi. Cả hai biến này đều là số nên chúng tôi có thể tương quan với chúng. Trong thực tế, các giá trị được trang bị chỉ là thời lượng trung bình cho mỗi nhóm:
> print(model.lm$fitted)
1 2 3 4 5 6 7 8 9 10 11 12
7.5 7.5 7.5 7.5 3.5 3.5 3.5 3.5 5.5 5.5 5.5 5.5
Chỉ cần kiểm tra, mối tương quan Pearson giữa các giá trị được quan sát và được trang bị là:
> cor(data.df$duration, model.lm$fitted)
[1] 0.825137
Chúng ta có thể hình dung điều này trên một âm mưu phân tán:
plot(x = model.lm$fitted, y = data.df$duration,
xlab = "Fitted duration", ylab = "Observed duration")
abline(lm(data.df$duration ~ model.lm$fitted), col="red")
Sức mạnh của mối quan hệ này rất giống với các âm mưu trong Bộ tứ của Anscombe, điều này không gây ngạc nhiên vì tất cả chúng đều có tương quan Pearson khoảng 0,82.
Bạn có thể ngạc nhiên rằng với một biến độc lập phân loại, tôi đã chọn thực hiện hồi quy (nhiều) thay vì ANOVA một chiều . Nhưng trên thực tế, điều này hóa ra là một cách tiếp cận tương đương.
library(heplots) # for eta
model.aov <- aov(duration ~ topic, data = data.df)
summary(model.aov)
Điều này đưa ra một bản tóm tắt với thống kê F và giá trị p giống hệt nhau :
Df Sum Sq Mean Sq F value Pr(>F)
topic 2 32 16.000 9.6 0.00586 **
Residuals 9 15 1.667
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Một lần nữa, mô hình ANOVA phù hợp với ý nghĩa của nhóm, giống như hồi quy đã làm:
> print(model.aov$fitted)
1 2 3 4 5 6 7 8 9 10 11 12
7.5 7.5 7.5 7.5 3.5 3.5 3.5 3.5 5.5 5.5 5.5 5.5
Điều này có nghĩa là mối tương quan giữa các giá trị được trang bị và quan sát của biến phụ thuộc giống như với mô hình hồi quy bội. "Tỷ lệ phương sai được giải thích" đo cho hồi quy bội có tương đương ANOVA, (bình phương eta). Chúng ta có thể thấy rằng họ phù hợp.η 2R2η2
> etasq(model.aov, partial = FALSE)
eta^2
topic 0.6808511
Residuals NA
Theo nghĩa này, sự tương tự gần nhất với "mối tương quan" giữa một biến giải thích danh nghĩa và phản ứng liên tục sẽ là , căn bậc hai của , tương đương với hệ số tương quan cho hồi quy. Điều này giải thích nhận xét rằng "Biện pháp tự nhiên nhất về mối liên hệ / tương quan giữa một biến danh nghĩa (được lấy là IV) và thang đo (được lấy là DV) là eta". Nếu bạn quan tâm nhiều hơn đến tỷ lệ phương sai được giải thích, thì bạn có thể gắn bó với bình phương eta (hoặc hồi quy tương đương với ). Đối với ANOVA, người ta thường bắt gặp một phầnη 2 R R 2ηη2RR2eta bình phương. Vì ANOVA này là một chiều (chỉ có một yếu tố dự đoán phân loại), bình phương eta một phần giống như bình phương eta, nhưng mọi thứ thay đổi trong các mô hình với nhiều dự đoán hơn.
> etasq(model.aov, partial = TRUE)
Partial eta^2
topic 0.6808511
Residuals NA
Tuy nhiên, rất có thể "không tương quan" hay "tỷ lệ phương sai được giải thích" là thước đo kích thước hiệu ứng bạn muốn sử dụng. Ví dụ, trọng tâm của bạn có thể nói nhiều hơn về cách các phương tiện khác nhau giữa các nhóm. Câu hỏi và câu trả lời này chứa nhiều thông tin hơn về bình phương eta, bình phương một phần và các phương án khác nhau.