卡方检验(R)的原因不明原因

时间:2018-05-07 12:29:50

标签: r chi-squared

我在R中使用chisq.test命令时遇到了一些麻烦:根据我使用数据的方式,我得到了不同且奇怪的结果。

我们说我有下表t

> t    
   data1   data2   data3   data4   data5
    1487    3301    2983    2432    6151
    1296    1519    1354    1244    3139
    1169     867     837     916    2191
    1372     681     802    1065    1749
    1497     630     962    1256    1304
    1502     544    1097    1380     942
    1344     477    1200    1410     673
    1031     346    1199    1286     347
     705     172     975     980     170
     542      90     919     770      66
     276      26    1005     604      10

我在栏目之间进行了chi2测试,但我不明白:

当我chisq.test(x=t[,1], y=t[,2])时,我得到了:

X-squared = 110, df = 100, p-value = 0.2322

这与我的结果相同:

data1 <- c(1487, 1296, 1169, 1372, 1497, 1502, 1344, 1031, 705, 542, 276)
data2 <- c(3301, 1519, 867, 681, 630, 544, 477, 346, 172, 90, 26)
chisq.test(x=data1, y=data2)

但不同于:

t2 <- matrix(c(data1, data2), ncol=11, nrow=2, byrow=T)
chisq.test(t2)
X-squared = 2865.8, df = 10, p-value < 2.2e-16

根据自由度,我猜最后一个是正确的,但这里发生了什么?此外,无论我选择在测试中使用哪一列,我都得到了相同的pval ...

1 个答案:

答案 0 :(得分:2)

实际上,使用第三个chisqtest,您将data1和data2放在一个向量中,并且您将长度为22的向量与y = NULL进行比较。确切地说,你使用后面的chisq.test命令执行以下操作:

 t2 <- matrix(c(data1, data2), ncol=11, nrow=2, byrow=T)
 chisq.test(x = t2, y = NULL)

给出了:

 Pearson's Chi-squared test
 data:  t2
 X-squared = 2865.8, df = 10, p-value < 2.2e-16