0

全部,

我正在尝试对转换矩阵中的眼睛数据执行 chisq.test(),其中每一行代表从 7 个感兴趣区域 (AoI) 的一个区域到其他每个区域的注视计数。在这个分析中,从一个 AoI 到自身的过渡是没有意义的。因此,这些字段包含 NA。

我尝试了各种不同的格式,从 8 列和行的基本表格输入(顶行是标题,左列是“从”)到简单的三列数据(从,到,值)。

我的 data.frame 看起来像这样:

from <- c("frLS", "frLF", "frRF", "frRS", "frIns", "frEng", "frOthr")
frLS <- c(NA, 77,3, 0, 17, 0, 1)
frLF <- c(18, NA, 14, 1, 56, 2, 9)
frRF <- c(1, 52, NA, 15, 16, 1, 14)
frRS <- c(0, 7, 35, NA, 13, 15, 30)
frIns <- c(3, 54, 2, 1, NA, 4, 37)
frEng <- c(0, 9, 0, 3, 27, NA, 61)
frOthr <- c(2, 60, 2, 5, 27, 4, NA)

aoi.df <- data.frame(from, frLS, frLF, frRF, frRS, frIns, frEng, frOthr)

(请注意,这不是实际数据,而是来自 Holmqvist 等人的眼动追踪教科书的示例数据。)

注意我也试过这个作为矩阵

aoi.matrix <- matrix(c(frLS, frLF, frRF, frRS, frIns, frEng, frOthr), ncol=7)

但我认为问题在于 NA 不是数据的形式,但如果是这种情况,我不确定如何处理它。

4

2 回答 2

0

NAs 确实是问题所在。错误信息很清楚:

> chisq.test(aoi.matrix)
Error in chisq.test(aoi.matrix) : 
  all entries of 'x' must be nonnegative and finite

要么你需要NA用别的东西代替,比如说,0如果这有意义的话。

现在,我不太明白你的问题。但是你确定 achisq.test是你想要做的吗?这对我来说没有任何意义。回想一下,您正在测试独立性。但是,如果对角元素始终为零或NA,则它们不能独立。

于 2014-06-05T16:49:48.033 回答
0

好的,这里是如何使用 NA 处理 chisq.test。当我问这个问题时,我不知道的一件事是我矩阵中的 NA 是所谓的“结构零点”。因此,它们不是零,因为“零”是一个计数,也不是数据收集中无法解释的问题。相反,它们来自数据集的结构。在转移矩阵的情况下,我们不允许从对象“A”转移到它自己,只允许转移到其他对象。

综上所述,事实证明(当然)有一个 R 包!我需要向您推荐 aylmer 文档以获得更详细的解释,但我几乎得到了我希望 chi.square 能给我的东西:

aylmer.test(aoi.df,alternative = "two.sided",simulate.p.value = TRUE)

请注意,我确实必须删除“来自”名称的第一列,但除此之外一切正常。

于 2014-07-02T01:46:37.303 回答