Có hai vectơ Boolean, chỉ chứa 0 và 1. Nếu tôi tính tương quan Pearson hoặc Spearman, chúng có ý nghĩa hay hợp lý không?
Có hai vectơ Boolean, chỉ chứa 0 và 1. Nếu tôi tính tương quan Pearson hoặc Spearman, chúng có ý nghĩa hay hợp lý không?
Câu trả lời:
Tương quan Pearson và Spearman được định nghĩa miễn là bạn có một số và một số cho cả hai biến nhị phân, giả sử và . Thật dễ dàng để có được một ý tưởng định tính tốt về ý nghĩa của chúng bằng cách nghĩ về một biểu đồ phân tán của hai biến. Rõ ràng, chỉ có bốn khả năng (do đó, việc jitter để lắc các điểm giống hệt nhau để hình dung là một ý tưởng tốt). Ví dụ, trong mọi tình huống trong đó hai vectơ giống hệt nhau, có một số 0 và một số 1 trong mỗi trường hợp, sau đó theo định nghĩa và tương quan nhất thiết phải là . Tương tự, có thể là- 1và sau đó tương quan là .
Đối với thiết lập này, không có phạm vi cho các quan hệ đơn điệu không tuyến tính. Khi nhận các cấp bậc và giây theo quy ước midrank thông thường, các cấp bậc chỉ là một phép biến đổi tuyến tính của gốc và giây và tương quan Spearman nhất thiết phải giống hệt với tương quan Pearson. Do đó, không có lý do để xem xét tương quan Spearman riêng biệt ở đây, hoặc thực sự ở tất cả.
Mối tương quan phát sinh một cách tự nhiên đối với một số vấn đề liên quan đến giây và giây, ví dụ như trong nghiên cứu các quá trình nhị phân theo thời gian hoặc không gian. Tuy nhiên, về tổng thể, sẽ có những cách nghĩ tốt hơn về dữ liệu đó, phụ thuộc phần lớn vào động cơ chính của một nghiên cứu như vậy. Ví dụ, thực tế là các mối tương quan có ý nghĩa nhiều không có nghĩa là hồi quy tuyến tính là một cách tốt để mô hình hóa một phản ứng nhị phân. Nếu một trong các biến nhị phân là một phản hồi, thì hầu hết những người thống kê sẽ bắt đầu bằng cách xem xét một mô hình logit.
Có các số liệu tương tự chuyên biệt cho các vectơ nhị phân, chẳng hạn như:
Vân vân.
Để biết chi tiết, xem tại đây .
Tôi không khuyên bạn nên sử dụng hệ số tương quan của Pearson cho dữ liệu nhị phân, xem ví dụ phản tác dụng sau:
set.seed(10)
a = rbinom(n=100, size=1, prob=0.9)
b = rbinom(n=100, size=1, prob=0.9)
trong hầu hết các trường hợp cả hai đều cho 1
table(a,b)
> table(a,b)
b
a 0 1
0 0 3
1 9 88
nhưng mối tương quan không cho thấy điều này
cor(a, b, method="pearson")
> cor(a, b, method="pearson")
[1] -0.05530639
Một thước đo tương tự nhị phân như chỉ số Jaccard cho thấy tuy nhiên mối liên kết cao hơn nhiều:
install.packages("clusteval")
library('clusteval')
cluster_similarity(a,b, similarity="jaccard", method="independence")
> cluster_similarity(a,b, similarity="jaccard", method="independence")
[1] 0.7854966
Tại sao lại thế này? Xem ở đây hồi quy bivariate đơn giản
plot(jitter(a, factor = .25), jitter(b, factor = .25), xlab="a", ylab="b", pch=15, col="blue", ylim=c(-0.05,1.05), xlim=c(-0.05,1.05))
abline(lm(a~b), lwd=2, col="blue")
text(.5,.9,expression(paste(rho, " = -0.055")))
vẽ bên dưới (thêm tiếng ồn nhỏ để làm cho số điểm rõ ràng hơn)