Cách tính chi bình phương trong Excel vs R


9

Tôi đang xem một bảng tính excel tuyên bố sẽ tính toán , nhưng tôi không nhận ra cách làm này và tôi tự hỏi liệu tôi có thiếu thứ gì không.χ2

Đây là dữ liệu mà nó đang phân tích:

+------------------+----------+----------+
| Total Population | Observed | Expected |
+------------------+----------+----------+
|             2000 |       42 | 32.5     |
|             2000 |       42 | 32.5     |
|             2000 |       25 | 32.5     |
|             2000 |       21 | 32.5     |
+------------------+----------+----------+

Và đây là số tiền nó làm cho mỗi nhóm để tính chi bình phương:

P = (sum of all observed)/(sum of total population) = 0.01625
A = (Observed - (Population * P)) ^2
B = Total Population * P * (1-P)
ChiSq = A/B

Vì vậy, đối với mỗi nhóm, là:χ2

2.822793
2.822793
1.759359
4.136448

Và tổng số Chi Square là : 11.54139.

Tuy nhiên, mọi ví dụ tôi đã thấy khi tính toán hoàn toàn khác với điều này. Tôi sẽ làm cho mỗi nhóm:χ2

chiSq = (Observed-Expected)^2 / Expected

Và do đó, với ví dụ trên tôi sẽ nhận được tổng giá trị vuông 11.3538.

Câu hỏi của tôi là - tại sao trong bảng excel họ lại tính toán theo cách này? Đây có phải là một cách tiếp cận được công nhận?χ2

CẬP NHẬT

Lý do tôi muốn biết điều này là tôi đang cố gắng sao chép những kết quả này bằng ngôn ngữ R. Tôi đang sử dụng hàm chisq.test và nó không xuất hiện với cùng số với bảng Excel. Vì vậy, nếu bất cứ ai biết cách thực hiện phương pháp này trong R, nó sẽ rất hữu ích!

CẬP NHẬT 2

Nếu có ai quan tâm, đây là cách tôi tính toán trong R:

res <- matrix(c((2000-42), 42, (2000-42), 42, (2000-25), 25, (2000-21), 21), 2, 4)
chisq.test(res)

Cách tiếp cận trong bản cập nhật thứ hai của bạn sẽ đưa ra thống kê chính xác. Tuy nhiên, nếu dự kiến ​​của bạn không dựa trên tổng số quan sát được thì bạn có thể gặp vấn đề vì giá trị p có điều kiện về điều đó. Tuy nhiên, tôi nhận thấy những gì được mong đợi và quan sát có cùng một tổng số (không có khả năng xảy ra do tình cờ) nên điều này có lẽ tốt. Bạn có thể làm điều đó dễ dàng hơn theo cách này:x=c(42,42,25,21);chisq.test(cbind(x,2000-x))
Glen_b -Reinstate Monica 2/214

@Glen_b Trong bảng tính Excel tôi tin rằng các kỳ vọng đã được giải quyết bằng cách thực hiện Tổng dân số * giá trị 'P' mà tôi đã làm ở trên. Đây sẽ là một vấn đề? Ngoài ra, tổng dân số không thay đổi - hầu hết thời gian là năm 2000 nhưng thực sự có thể là bất kỳ con số nào. Bảng tính Excel tôi đang cố gắng tạo lại ở đây không thực sự tính đến giá trị p, vì vậy nếu thống kê sẽ không bị ảnh hưởng bởi điều này thì có lẽ đó không phải là vấn đề ...
user1578653

Câu hỏi sôi nổi đến từ nơi p đến từ đâu. Họ có liên quan đến việc nhìn vào tổng số quan sát?
Glen_b -Reinstate Monica

Đối với tôi, nó trông giống như Ps, và do đó, dự kiến ​​dựa trên cả tổng số quan sát được và tổng dân số ... Tuy nhiên, trong tất cả các ví dụ tôi đã đưa ra trong bảng Excel, giá trị mong đợi dường như cũng khớp với tổng số quan sát / số lượng đếm.
dùng1578653

Nếu p dựa trên số lượng theo cách đó, tất nhiên các dự kiến ​​sẽ theo sau. Nếu đó là trường hợp, có vẻ như mức độ tự do và cứ như vậy là tốt như cách bạn đã làm trong R - nhưng một vài lời giải thích của tôi có thể cần phải thay đổi.
Glen_b -Reinstate Monica

Câu trả lời:


13

Điều này hóa ra khá đơn giản.

Đây rõ ràng là lấy mẫu nhị thức. Có hai cách để xem xét nó.

XTôi~Thùng rác(NTôi,pTôi)N(μTôi= =NTôipTôi,σTôi2= =NTôipTôi(1-pTôi))ZTôi= =(XTôi-μTôi)/σTôiZΣTôiZTôi2~χ2

Z

(Ôi-E)2/E

+------------+------+-------+
| Population | In A | Not A |
+------------+------+-------+
|       2000 |   42 |  1958 |
|       2000 |   42 |  1958 |
|       2000 |   25 |  1975 |
|       2000 |   21 |  1979 |
+ -----------+------+-------+

ENTôi(1-pTôi)

(Ôi-E)2/E

1/p+1/(1-p)= =1/p(1-p)th

(XTôi-μTôi)2σTôi2= =(XTôi-NTôipTôi)2NTôipTôi(1-pTôi)= =(XTôi-NTôipTôi)2NTôipTôi+(XTôi-NTôipTôi)2NTôi(1-pTôi)= =(XTôi-NTôipTôi)2NTôipTôi+(NTôi-NTôi+NTôipTôi-XTôi)2NTôi(1-pTôi)= =(XTôi-NTôipTôi)2NTôipTôi+(NTôi-XTôi-(NTôi-NTôipTôi))2NTôi(1-pTôi)= =(XTôi-NTôipTôi)2NTôipTôi+((NTôi-XTôi)-NTôi(1-pTôi))2NTôi(1-pTôi)= =(ÔiTôi(Một)-ETôi(Một))2ETôi(Một)+(ÔiTôi(Một¯)-ETôi(Một¯))2ETôi(Một¯)

Điều đó có nghĩa là bạn sẽ nhận được cùng một câu trả lời theo cả hai cách, cho đến lỗi làm tròn số.

Hãy xem nào:

             Observed             Expected                 (O-E)^2/E          
  Ni        A     not A          A      not A             A           not A      
 2000     42         1958      32.5     1967.5       2.776923077     0.045870394     
 2000     42         1958      32.5     1967.5       2.776923077     0.045870394     
 2000     25         1975      32.5     1967.5       1.730769231     0.028589581     
 2000     21         1979      32.5     1967.5       4.069230769     0.067217281     

                                            Sum     11.35384615      0.187547649  

Chi bình phương = 11,353846 + 0,187548 = 11,54139

Mà phù hợp với câu trả lời của họ.


1
Cảm ơn bạn đã giúp đỡ! Tôi không phải là nhà toán học / thống kê nên điều này ban đầu làm tôi bối rối, nhưng lời giải thích của bạn rất dễ hiểu.
dùng1578653
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.