在 R 中正确使用卡方

Using Chi-Square in R Correctly

我正在尝试使用卡方检验和不同调查答案的交叉表。答案是明确的,但用数字表示。

下面是一个例子:

         1  2   3   4   
    1   368 768 346 155 
    2   213 598 286 140 
    3   528 2047 1293 501 
    4   910 2953 1764 806 
    5   1579 7448 7489 4259 
    6   961 4851 6481 7944 

我尝试了几个 chisq.test 的例子,但每次都遇到错误信息。我想理想情况下我想 运行 循环测试每种可能性(见下面的代码)。

CHIS <- lapply(df[,-1], function(x) chisq.test(Q5_Q8.1[,1], x))

使用上面的代码我得到了以下错误:“卡方近似值可能不正确。”

我仍然是 R 的新手,并且仍在学习如何进行大量统计,所以如果能以最好的方式帮助我解决这个问题,那就太好了。提前致谢!

卡方检验实际上是两种不同类型的检验。一种是拟合优度检验,需要两个变量或者一个变量和一个分布。这是您使用问题代码进行的测试。

但是您要求进行交叉表测试。然后仅传递具有 2 列的 table。

CHIS <- lapply(seq_along(Q5_Q8.1)[-1], function(i) 
  chisq.test(Q5_Q8.1[c(1, i)]))

数据

Q5_Q8.1 <-
structure(list(`1` = c(368L, 213L, 528L, 910L, 1579L, 961L), 
    `2` = c(768L, 598L, 2047L, 2953L, 7448L, 4851L), `3` = c(346L, 
    286L, 1293L, 1764L, 7489L, 6481L), `4` = c(155L, 140L, 501L, 
    806L, 4259L, 7944L)), class = "data.frame", row.names = c("1", 
"2", "3", "4", "5", "6"))