我正在查看一个自称正在计算的Excel工作表,但我不知道这样做的方式,我想知道是否丢失了某些东西。
这是它正在分析的数据:
+------------------+----------+----------+
| Total Population | Observed | Expected |
+------------------+----------+----------+
| 2000 | 42 | 32.5 |
| 2000 | 42 | 32.5 |
| 2000 | 25 | 32.5 |
| 2000 | 21 | 32.5 |
+------------------+----------+----------+
这是为计算卡方而对每个组所做的总和:
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
因此,对于每个组,为:
2.822793
2.822793
1.759359
4.136448
总的Chi平方为:11.54139
。
但是,我看到的每个计算示例都与此完全不同。我会为每个小组做的:
chiSq = (Observed-Expected)^2 / Expected
因此,对于上面的示例,我得到的总卡方值为11.3538
。
我的问题是-为什么他们在Excel工作表中以这种方式计算?这是公认的方法吗?
更新
我想知道这一点的原因是,我试图用R语言复制这些结果。我正在使用chisq.test函数,它的编号与Excel工作表的编号不同。因此,如果有人知道如何在R中执行此方法,将非常有帮助!
更新2
如果有人感兴趣,这是我在R中的计算方法:
res <- matrix(c((2000-42), 42, (2000-42), 42, (2000-25), 25, (2000-21), 21), 2, 4)
chisq.test(res)
x=c(42,42,25,21);chisq.test(cbind(x,2000-x))